Html structure

Following on from #406, this has been updated to use a static regex.

I ran the bench tests for this PR and v0.3.2 (50000 iterations) and there doesn't seem to be any significant difference:

|                              | v0.3.2          | This PR      |
| ----------------------- | -------------- | ---------------|
| marked                  | 171160ms  | 169728ms. |
| marked (gfm)        | 186709ms  | 188834ms. |
| marked (pedantic) | 161621ms  | 161455ms. |