PGMap,PGMonitor: osd_stat will be empty for out osd

When an osd is marked out, rather than remove it from osd_stat,
we instead 0 out the structure.

This patch also makes osd_stat_updates and osd_stat_rm private.
This should make it simpler to enforce invariants on these
mappings.

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGMap: maintain a mapping of osd to epoch of most recent stat message

Each up osd will have a mapping since out osds are now included as
empty stats.

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGMap: calc_min_last_epoch_clean() will now also use osd_epochs

We don't want to trim past the current osd map for any up osd.
osd_epochs provides a lower bound for that epoch for each osd.

Signed-off-by: Samuel Just <sam.just@inktank.com>