adding initial reimplementation of OMD
add some tweaks, notes, TODOs (and doctest bits)
fix get() (always return copies of lists, so as not to blow up the mutable state.)
add clear tests