separate out combinators, helpers, reserved words
extract and modularise all node generators