feat(bootstraping): bare-bones implementation of application.

No matter what, we still need the ```Application``` class so that users can get a hold of ```app.injector``` and ```app.insertionElement```. I agree that the constructor should be private, but that's not in ES6.