Frontend spec; environments; prepare for Travis CI

This somewhat busy commit adds tests for the frontend Sinatra app.

Additionally, Rack environments are supported and used (especially
with Redis) in testing.

Finally, this adds additional bits for Travis CI.