Explicitly model remixing as a tree

This add convenient methods for traversing the tree and preserves ordering:
  a = Map.last
  b = a.remix
  b.parent #=> a
  a.children #=> [b]