Allow needle to be used with custom web driver

Example usage:

    class FirefoxNeedleTestCase(NeedleTestCase):
        @classmethod
        def get_web_driver(cls):
            return type('NeedleFirefox', (NeedleWebDriverMixin, Firefox), {})()