Flattens multiple parsers (called flatMap elsewhere)
Given the result of the current parser, return a new parser