Changes to support the new copy command

Corresponds to the platform PR: https://github.com/pulp/pulp/pull/400

Renamed the copy.py to copy_commands.py to not cause annoyances with python's copy.

The base class in there, RecursiveCopyCommand, is used because (at least in 2.0) all of the RPM commands support a flag indicating dependencies should be copied as well.

The commands themselves had me going back and forth. I could have gotten away with methods that instantiate the RecursiveCopyCommand and pass in the right stuff for the type at hand. I went this route because it looks more consistent with the rest of the extension commands.

The tests diff looks horrendous and I'd recommend simply viewing the file itself. There is a ton less to do than they originally did since so much of the functionality is handled by the base classes.