Cleaning up interface of ContextSet.

Names and arguments were uniformized, and some functions were redesigned to
take their typical use-case into account.
Adding a primitive to merge ContextSets which is more efficient when one
of the argument is smaller than the other one.
Using the asymmetric merging primitive in Evd.