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

Includes shadowDom creation and integration tests for nested components.
Is this really needed, as `Directive` annotation should not be used directly but only as a parent class?