feat(components): adds support for multiple insertion points [WIP]

This PR depends on #1293. 

The current implementation of transcluding components is very limited and allows only one insertion point (a wildcard) and does not support redistribution. This PR adds multiple support for multiple insertion points:

```html
<content select=".A"></content>
<some-component>
  <content></content>
</some-component>
```
It is probably a good idea for the error to include both the key and the key id in case the key is null. Not sure if it should be a part of this PR cause there are multiple implementations of _getById that work like this.