Allow RefCountedPtr to be assigned and copied from compatible RefCountedPtr.
Do not copy/assign reference counter.
Atomic reference counter.
Delete RefCounted copy/move constructors and assignment operators. Change the only place relying on it.
Used std::atomic<int> and explicit m_refCount(0) to initialise.
Visual Studio 2012 doesn't support the `= delete` syntax so simply made copy constructors and assignment operators private with no implementation. VS2013 does seem to support it but we still need to support VS2012.
Merge branch 'lwho/ref_counted_ptr'