Simplify integration testing of services

This adds a new `AsyncHTTPTestCase` base class that inherits from the
`tornado.testing.AsyncHTTPTestCase`. The idea is to have a set of best
practices when creating integration tests for Supercell services.

This class by default re-uses the same `IOLoop` by overriding
`get_new_ioloop`. Using the `pytest` `monkeypatch` fixture we set the
command line defined by the class level variable `ARGV`. This can be
used to pass custom configuration values to the service.

Finally the service to test is defined in the class level variable
`SERVICE`. A fully functional example would be::

    class MyIntegrationTest(AsyncHTTPTestCase):

        ARGV = ['--es=127.0.0.1:9200']
        SERVICE = MyService

        def test_ping(self):
            resp = self.fetch('_system')
            self.assertEquals(200, resp.code)