osd/ReplicatedPG: proxy read to the appropriate clone

If the head is present in the cache, we resolve to a specific clone in
the cache tier and want to read from that clone via proxy.  This avoids
problems where the snapset in the base tier is out of date.  If we are
missing the head, then we want to pass the request onmolested to the base
and resolve the snapid to a clone there.

Signed-off-by: Sage Weil <sage@redhat.com>