Fix the Cd5 PULSE failing test case

The Cd5 PULSE counterexample can be found at:
https://github.com/basho/bitcask/pull/156#issuecomment-43968268

The bug: when a tombstone T is encountered during a merge, and if
the tombstone is out of date, T was ignored/skipped.  This caused
a incorrect resurrection of T's key later in the test case.

The fix: when a tombstone T is encountered during a merge, and if
T is out of date, perhaps merge it forward anyway.  The code for
merging a tombstone forward was moved into its own function for
reuse, merge_single_tombstone().  That code remains the same as
it was before this commit, except for indenting and comment
formatting.