Major rewrite. Switch to an offline backend that validates all html files. Package in a new pip-installable package for easy installation.