Allow docker cp to copy host->container, container->host, container->container

Closes #5846

This allows:

`docker cp <container_id>:/path path`
`docker cp path <container_id>:/path`
`docker cp <container_id>:/path <container2_id>:/path`

With container to container, to keep the code simple (for now?) the content goes through the client's fs.

Needs `API` bump & doc

This one needs a lot of testing @crosbymichael @tiborvass @unclejack @LK4D4 
maybe be more explicit in the error message about which parameter you're expecting.