define a move constructor for Ref<const...>
Reference issue
What does this implement/fix?
Ref<const...> now defines a move constructor. If the storage of Ref<const...>'s member variable m_object is dynamic, then this avoids copying it. In any case, the moved-from Ref<const...> not only remains in a valid state, but it continues to map the same data - which follows the unusual, existing definition of Ref<const...>'s copy constructor.