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).
It is supposed to be a null implementation. It is for the case when the browser handles the content tag, so angular does not need to do anything.