refactor: Drop the Controller directive

closes #919
closes #917

It is possible to define the context of the root scope with:

applicationFactory()
..rootContextType(RootContext)
..run();

The RootContext need not be annotated with a directive.