PG::find_best_info: find min_last_update_acceptable correctly

Previously, we found the max last_epoch_started and then took the min
last_update over peers with that last_epoch_started value.  This is problematic
because you might have a situation like below:

peer a) last_update: 10'11 last_epoch_started 10
peer b) last_update: 9'10 last_epoch_started 6
peer c) last_update: 9'10 last_epoch_started 6

This can happen even if the acting set where 10'11 was created was [a,b,c]
since each peer updates last_epoch_started in activate() and the primary does
not wait for the activations to complete before starting writes.  Thus, we need
to use the max_last_epoch_started value to determine the acting set of the most
recent write and take the min last_update over that set, since that determines
an upper bound on writes for which clients have recieved commits, and we might
otherwise commit to an update for which we have an insufficient number of
copies.

Fixes: #7649
Signed-off-by: Samuel Just <sam.just@inktank.com>
Merge remote-tracking branches 'origin/wip-7649' and 'origin/wip-7655' into wip-sam-testing
Merge branch 'wip-div' into wip-sam-testing