Rename `Macro` to `Helpers` and move some stuff there from `Base`.
Introduce a `both` combinator and implement `pair_*` in terms of it.