refactor(application): change Application not to use the builder pattern

Change the Application class not to use the builder pattern, and instead rely on method cascades.

BREAKING CHANGE: `addModule`, `selector`, and `run` have changed to return void.

Before:

var app = applicationFactory().addModule(module);
app.selector("some-selector")
var injector = app.run();

After:

var app = applicationFactory()
    ..addModule(module)
    ..selector("some-selector")
    ..run();
var injector = app.injector;

Closes #938