turn osmdata_t into a proper object. make parsers call member functions instead of passing osmdata_t object. clean up main by breaking out input function pointer into seprate function call. break out output_t creation into seprate function call. moved cleanup of pointers that osmdata_t holds into its destructor