Remove check for differing bindings in Or - it breaks the automatic names added to letp patterns
Sneakily pass remaining? through to letp fns through the number of arguments