make sure SAX endDocument is always called as this could result in a

* parser.c: make sure SAX endDocument is always called as
  this could result in a Python memory leak otherwise (it's
  used to decrement ref-counting)
* python/generator.py python/libxml.c python/libxml.py
  python/libxml2-python-api.xml python/libxml2class.txt
  python/tests/error.py python/tests/xpath.py: implemented
  the suggestions made by Gary Benson and extended the tests
  to match it.
Daniel
diff --git a/python/libxml2class.txt b/python/libxml2class.txt
index 16cab8e..4b08b79 100644
--- a/python/libxml2class.txt
+++ b/python/libxml2class.txt
@@ -117,10 +117,12 @@
 nodePush()
 
 # functions from module python
+SAXParseFile()
 createPushParser()
 debugMemory()
 dumpMemory()
 htmlCreatePushParser()
+htmlSAXParseFile()
 newNode()
 registerErrorHandler()
 
@@ -542,6 +544,8 @@
     contextSize()
     function()
     functionURI()
+    setContextDoc()
+    setContextNode()
 
     # functions from module python
     registerXPathFunction()