Make it possible to force small keys so we never create overflow keys.
Make the new removed overflow approach work for row-store as well,
do some cleanup to simplify the code paths.

This version writes out entirely new overflow keys in the case of
removed overflow keys, which isn't optimal, but it's not incorrect.
Generalize overflow keys to look like overflow values, that is, set the
on-page cell to be WT_CELL_OVFL_REMOVE, and check that value instead of
searching the overflow cache for every key, every time.  This isn't in
the service of the new split code, but should speed up workloads with
overflow keys quite a bit.

Rename the cell flag WT_CELL_VALUE_OVFL_RM to WT_CELL_OVFL_REMOVE, it
now applies to both keys and values.

Move the caching of the removed overflow value to __wt_ovfl_cache(),
that way we don't nuke the on-page cell until after we successfully
cache the value.

Turn off "cleanup" in the on-page overflow cache, we can't back out the
changes to the cell.  (This is all going to go away soon, though, now
that we're flagging the on-page cells, we don't really need to track
removed overflow items past a single reconciliation.)