Add failing test normalization formatters
Add failing whitespace test
Tidy up
Add sanitize and prepare phases to HTML formatting
Rename prepare phase to normalize
Do not rely on order of object properties
Document phases
fixup
Tidy up