Exp: implement Haskell's Data.Foldable (in spirit)
Implement matcher combinator

This is inspired by higher-order unification.

All of this is still to compile-test.