Simplified the bootstrap script
Made initialization better

The main loop no longer starts in the controller init. It
now has it's own method for explicitly calling the main loop.
This makes the code a little easier to read, and allows for
extended initialization to happen before the main loop takes
over.