Add missing messages, improve error handling

Fix '&' handling in attributes. Add missing errors to consume_entity. Handle illegal characters in unquoted attr values. Handle bang (!) in comment and. Pass error context as datavars from tokenizer.
Rename error codes to use existing, add missing ones. Add missing dots.