Item copy

This implements an item copy rest call via /item/{} POST.  It adds test coverage for the new functions.  As part of this, I've added a method to the files model to copy a file.  For all of our current three asset stores, I've added code to allow multiple files to use the same data through the use of a repeated reference.
Feel free to add moto to the dev dependencies and use that. If you need advice on that library, Chris Harris has recent experience with it that may be helpful. @cjh1