Good question! To keep it short and sweet: A renderable object (something with a render method)
If that was it, then honestly we are wasting our time. The point of a component is to encapsulate the view and it's binding to data (a model, view model, object literal, etc).
More info coming soon.