Minor features, a bug fix, and some cleanup.  Specifically:

() Maps now support 'contains(Map.Entry<Key, Val>)'.

() 'Pure{Hash,Tree}Set' now have a constructor taking a single 'Elt', to
construct a singleton set.

() Bug fix: 'Pure{Hash,Tree}Map.with' wasn't returning the input leaf
vector in the case where it already contained the entry in question.

() The recursive-union set/map construction algorithms have been replaced
with simple element-wise addition, which is at least as fast.  KISS :-)

() The internal map 'get' operation now returns a special object to say
that the key was not present, which allowed some other cleanups.