can we hide `shared.refcount` behind a method ie. decRef() / incRef() to be consistent with other stuff