Base-class for reference-counted objects.
By default the object is destroyed when zero reference-count is reached.