RavenDB-1309 - Using the last etag per collection during querying for staleness

I did go down the route initially of modifying storage to try and do this automatically, but this does the job just as well with far fewer changes.

I've a few failing tests and I'm sorting them out so **DO NOT MERGE**