RFC: ES6 container

[RFC document](https://github.com/MajorBreakfast/rfcs/blob/master/active/0000-es6-container.md)
The asynchronicity should stay in the router. `System.import` executed by the router first loads all dependencies for a route. That is it's controller, it's template and all helpers and components used in the template. Only then it executes the code.