TrackerResource may contain circular references to itself -- add `tracker_resource_destroy()`
A tree of TrackerResource instances may contain reference loops. Simply unreffing the top resource isn't enough to free all of the resources.
So, we need a tracker_resource_destroy()
function that applications would call to completely dispose of a tree of resources, even if they contain reference cycles.
Edited by Sam Thursfield