Returns a deep copy of this buffer. This is the same as copy but allows Buffer to implement the Cloneable interface on the JVM.