Added a parser parameter to the HTML reader

This should allow for greater flexibility in case the reader works with one parser (e.g. html5lib) and not another for abnormal input.
The `html.parser` option should always succeed since it is part of std lib.  So instead of `pass` I think it should be:
```
if parser == 'html.parser':
    raise
```