Allow block-level elements inside anchor tags

Closes #1134

Previously, `<a><div></div></a>` was parsed as `<a></a><div></div>`.  Now it will parse as expected.

This behavior will persist for all other span-level elements (e.g. `<b><div></div></b>` ==> `<b></b><div></div>`)