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

DON'T MERGE

@mhevery could you review this. There is only one piece that is missing (_sortedContents).
We do have a matcher with the same name, but it doesn't handle shadow root properly. I put it here for now, and then will move to Guinness.