Merge away ghosts, merge two at time.

Merge leaf pages two at a time. Undo the previous logic which tried to
fit as many leaf pages as possible into a merge. This is in accordance
with the direction I took for branch balancing; the branch balancing
logic expects to balance the removal of only a single node at time.
Closes #60.

Instead of first deleting a ghost in the left leaf page of a leaf page
merge in a separate balance operation, ghost deletions in the left leaf
page of a leaf page merge now take place in the leaf page merge
operation. This closes #56.

Fixed a bug in `mergePages` where the penultimate branch page was being
written as the pending semaphore, instead of the carefully selected
`ancestor` page.