A streaming XML parser which uses SAX to build objects and doesn't hold the entire file or object graph in memory