Use webmock instead of custom Thin server

Fixes #1

Instead of running a web server in the background, we'll just intercept
requests and respond with the necessary sinatra app. This means that
there is no race condition in getting the server started before tests
are run.