Extract the starting functionality into an exported class.

closes #3789
- Create a GhostServer class to manage state
- index.js now calls start on exported state instance
- Alter tests to expect an instance of GhostServer instead of an express app
So it is, silly me. I'll patch that up this evening.