Add optional </li> wherever possible
Add optional </dt> wherever possible
Add optional </p> wherever possible
Add optional </thead>, </tr>, </th>, </td> and </tbody> wherever possible

Some reflowing of lines was necessary to get this into a state that can
more easily be automatically indented by an unsophisticated script.
Merge pull request #45 from foolip/close-tags

Close optional tags wherever possible
Add a format.py script to validate the source

It's called format.py because the intention is to then normalize the
source according to some rules and to serialize it back to disk.
Merge pull request #46 from foolip/validate

Add a format.py script to validate the source
Remove some commented-out bits of code that don't look useful
Remove some comments used by tools we don't use
Pass webvtt.html through git stripspace

The only remaining "problem" was double blank lines.
Teach format.py to normalize (indent and wrap lines)

This isn't good enough to be enforced yet, but let's us try things out.

The indent depth and max line length may still need tweaking.
Merge pull request #48 from foolip/rm-comments

Remove comments
Merge pull request #49 from foolip/stripspace

Collapse double blank lines
Merge pull request #50 from foolip/normalize

Teach format.py to normalize (indent and wrap lines)
Break a few lines to avoid the line merging logic in format.py

In a few cases this looks silly, but mostly it's helpful to see the
siblings nodes at the same level of indentation.

Inconsistencies in indentation, line length and wrapping <p> was
intentionally left, since those changes can be automated.
Merge pull request #51 from foolip/avoid-line-merging

Break a few lines to avoid the line merging logic in format.py