Node library

This is a byproduct of the work on the desktop tools: a generic library to manage large object trees that may not fit in memory. See the large docstring for the documentation and the tests for examples of usage. Another pull request will follow with the conversion tool CSV <-> XML. This pull requests also contains some improvements to the StreamingXMLWriter.