Optimized SharedCount to only allocate a counter if a reference is made.  This optimizes default construction of a SharedPointer