Fairly huge refactor.

I'm disliking the two-way link between the baseController and the
classLoader. It's causing all sorts of headaches. I've also removed the
DI functionality that was originally present in the baseController,
since I've not found a use for it yet. Finally, I've simplified the
application setup and removed some of the global objects.