A PEG parser in JS, because there aren't enough of these yet.