RavenDB-1195 New patch existing / patch default function does not account for user-specified default metadata
RavenDB-1195
Merge branch 'RavenDB-1195' of https://github.com/jahmai/ravendb into 2.5

Conflicts:
	Raven.Abstractions/Commands/PatchCommandData.cs
Make sure to not miss updating the latest etag in the replicated status, if the etag is not exactly match but lower. In my case the etag was 0, but still need to be updated.
Use the latestEtag which in order to avoid not updating the latestEtag in some cases
Correctly set the latestEtag by using a currentLatestEtag inside the ExecuteAllInterleaved method instead of sharing there the same latestEtag. This let me to then set latestEtag to the max currentLatestEtag. This fixing a bug where the db tried to do replication from scratch infinitely.
Specifying timeout for S3 ops
Merge branch '2.5' of github.com:ayende/ravendb into 2.5