postprocess can now return Parser.fail

when a rule completes, the post processor may now provide a semantic
pass/fail to provide the last word on if the completed rule was a
successful parse