Add ProxyTestCase

This depends on FriendsOfSymfony/FosHttpCache#103. 

It adds:
* ProxyTestCase for functional cache tests in Symfony2 bundles
* A `@clearCache` annotation that will clear the configured proxy before each test case starts. This is automatic in the lib’s `AbstractProxyClientTestCase`, but my experience with Symfony apps is that usually only one or two different test classes are extended, so doing stuff automatically can really be a pain then. It’s better to add some functionality behind a PHPUnit annotation that users can decide when they want the behaviour.
* Some config for starting the proxy server in tests:

```yaml
fos_http_cache:
    proxy_server:
        varnish:
            binary: /usr/sbin/varnishd
            port: 8080
            config_file: /etc/varnish/default.vcl
```

Some problems:
* The `ProxyTestCase` is similar in some ways to the lib’s testcase. However, we cannot easily re-use that (except with traits) because we need to extend Symfony’s `WebTestCase` here for `ProxyTestCase` to have access to the container and be useful in a Symfony app.
Should we add the test client under `proxy_server` instead, or reorganise our service names in another way? Now we have `proxy_client`, `proxy_server`, and `proxy.test_client`. I imagine this will get confusing for people. :wink:

And perhaps this test client could be combined with the custom `guzzle_client` for the proxy client, after all: they are constructed the same way. What if we always construct a `guzzle_client`, custom or not, and use that as the test client, too?