Rework token handling to use a regular expression

Ometa tokenization using `seq()` doesn't support backtracking, so it
explodes in our case.