escape dot in test lexers
add parseSeparated/Optional/Repeat