Split up data init from running server
Split up routes init from running server
Use httptest in tests

This should reduce false test failures on Travis CI that occasionally
happen due to tests trying to access server that has not spun up yet.