Split the parser into more logical modules.