cleanup, more combinators, etc.