Fixed up rvalue reference handling.

- Changed Data class rvalue ref copy ctors to take non-const rval refs.
- Removed template version of data_ptr rval ref assignment operator
  and replaced with non-template versions for those types that actually
  benefit from move semantics.

Signed-off-by: Chris Reed <flit@me.com>