Set our entry's value and writes it through to the map. The
value to return is somewhat arbitrary: since a
WriteThroughEntry does not necessarily track asynchronous
changes, the most recent "previous" value could be
different from what we return (or could even have been
removed in which case the put will re-establish). We do not
and cannot guarantee more.