add MapLike class, separate SetLike out. rearrange MPTC parameters for newtype deriving.
add MapLike class, separate SetLike out. rearrange MPTC parameters for newtype deriving.

darcs-hash:ade9a870d2f7fc480045f34bdcb2836ecc92bf21

dpwright/jhc,dpwright/jhc,dpwright/jhc,dpwright/jhc