Merge pull request #139 from jab/master

note iterlinks' meta refresh support in CHANGES.txt
fix crash when deallocating sibling Element proxies that do not have a parent
prevent tree cycle creation when adding siblings
refactor some duplicated code
changelog
merge lxml-3.3 branch into master
prepare release of lxml 3.3.6
merge lxml-3.3 branch into master
include Py3.4 (and pypy3) in travis tests
lxml.html.document_fromstring ensure_head option

When using lxml.html.document_fromstring to process html outside your control,
you can't be sure it will have a head element. Allowing document_fromstring to
accept an ensure_head option saves you from having to write code like:

    doc = document_fromstring(html)
    try:
        doc.head
    except IndexError:
        from lxml.html import builder
        doc.insert(0, builder.HEAD())
    # now we can safely reference doc.head

and instead just write:

    doc = document_fromstring(html, ensure_head=True)