Revert "Correctly insert at an existing parent if appropriate"

This reverts commit bb04ce073bfd5e1543285074b20fedf54d3f6feb.

Tests are failing because of this change. Nothing seems wrong with the
change but it needs a fix to the related tests before it lands again.
docs: add ref for intersphinx links
roundtrip: run silently when roundtripping
dtd: underscore is valid in entity names

We where failing is_valid_accesskey when entity name contained _ which
would remove a leading & and make the entity invalid.
dtd: optional expected makes cleaner roundtrip setups
accesskeys: test numeric keys
accesskeys: test combining non-ASCII keys

The function actually claimed to return Unicode but was converting to a
basestring.  So this also drops that conversion to basestring.
py3: Add six to dependencies
py3: Fix html-related imports on Python 3