feat(view): add support for instantiation of nested views.

Includes shadowDom creation and integration tests for nested components.
Could you split this up into multiple test cases so it is more clear what is being tested?