Object-oriented dash components

This is pretty cool, thanks for sharing @dstarkebaum and @psip!

Another useful thing here would be namespacing component IDs: https://github.com/plotly/dash/issues/637