Factored out naive update in tests.
Implemented `updateLookupWithKey`.

Now the base implementation of the update series.
Implemented `update`.
Deleted trailing whitespace.
Implemented `split`.
Implemented `splitLookup`.
Merge isturdy's split implementation
Simplify t_split_present and t_split_missing
Drop all uses of List.deleteBy, all of which were wrong

It shouldn't have been used in the first place, since it wasn't
doing what the author evidently thought it was.  I believe they
expected it to delete every matching key from a list of pairs, when
in fact it deletes only the first.

--HG--
extra : amend_source : 7faf4731a551b5393dfc8f09af07c2d5384785a5
Simplify splitLookup tests
Merge isturdy's update branch