Moved base object model to library.
Added a lot of null checks to throw proper exceptions if the TMX file doesn't contain the correct nodes and attributes.