[WIP] Refactoring and optimization.

Roadmap:
- [x] Move error messages to json file.
- [x] Drop `HTML5` namespace, use `require` for modules.
- [x] Use strict.
- [x] Fix formatting and naming issues.
- [ ] Improve perfomance.
- [x] Drop logging/debugging module (not sure).
- [ ] lineNuber, columnNumber error info.
- [x] Move tree construction logic from parser.js to tree builder.
- [x] Decomposite TreeBulder to abstract builder and dom builder. Add sax tree builder (not sure).
- [x] dom builder should utilize public dom api only. for jsdom we should create special handler and should not use client dom api at all.
- [ ] jsdoc.

These changes of course are not backwards compatible.

Then we could propose this parser as default parser for jsdom :)