parse.py: regard unconcluded token as error
compile.py: case-insensitive predefined doctype lookup
parse.py: Add AbstractLexer.rollback to restart current token