Remove dead code warnings
Remove #deriving from types, for now
Remove erroroneous DoctypeEnd

Doctype ends with GreaterBracket, not with `!>`
Various fixes

- Mostly fixes the way new `read_chr` now returns `Option<Character>`
  instead of `Character`, in calling functions and tests
- Removes error tracking, for now
- Fixes errors caused by new Rust `Reader` that doesn't have eof()
  but instead returns EOF on `read_char` as `None`
Moved function for char validation to util