libabc: Make things hold a reference to their context The sample libabc includes functions to get a "thing", as a sample sub-object of the overall library context. Each "thing" has a reference to the parent library context, and a function to return that reference. Given that, abc_thing_new_from_string should call abc_ref, and abc_thing_unref should call abc_unref when freeing a thing.