add unit tests for cpu/gpu copy functions
add Adopt{Data,Diff} methods to blobs to enable "virtual copying"