Major parser update

Virtual methods for creating element or scene objects is now a modifier
Parser no longer constructs with a scenegraph
Read has been changed to LoadSceneGraph, where the scenegraph instance
is now passed by reference
This allows the parser to be inherited and to load into separate
scenegraph objects
Callback userdata

Added an optional userdata property to callback_info