Add Copy and DeepCopy trait and deriving modes

This prepares the source code for renaming `clone` -> `copy`.
Needs an snapshot to proceed.

I'm not sure if it's actually desirable at this point to make the change, but I think `copy` is a more fitting name than `clone`. It's shorter, too ;)