feat(viewPort): adds initial implementation of ViewPort.

ViewPort is the mechanism backing @Template directives. Those
directives can use the viewport to dynamically create, attach and
detach views.
Maybe we should use a special object instead of -1.

```
var _last = new Object() //singleton
insert(view, atIndex = _last) {
}
```