Prevent result cache key collisions when sharing cache across different connections

There's an issue when using the default cache key generation for the result cache and using the same cache system across different connections as the generated key will be the same regardless of the connection used.

We can solve this just by using the connection params in the key generation. This issue is quite similar to the one fixed in [#1075](https://github.com/doctrine/doctrine2/pull/1075).
The executeCacheQuery method on Connection is completely untested :P

Okay, I'll test the connection parameters are passed to QueryCacheProfile when calling generateCacheKeys ;-)