Modified the toString methods so they print in a more user-friendly manner
Added a new LowLevel method called getObject that does not catch any exceptions. Added a new method called existsObject that calls getOBject and handles those exceptions. Changed findObject method to call getObject and handle exceptions accordingly. Changed the new methods added for BatchMetadataInjection so that they use existsObject method. Changed some error messages.
extended the internal hashmap so it does not accept null values
Bug fixing. Re-ordered some steps. Migrated more code out of BatchMetadataInjection