General layout and usability improvements
Loading initial JS requirements in one call to server
Adding a loading indicator.

The JS in main.js is getting a little hairy, it will need to be cleaned
up once these initial features are all implemented. For now though, I
can live it with.

Closes #11