Enhanced arguments handling

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Bump core version

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Enhanced arguments handling

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Pin hacking to fix tests

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Bump version

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Fix parameter naming

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Better (index-based) validation

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
Enhance filtering on the driver interface

Docker-DCO-1.1-Signed-off-by: Olivier Gambier <olivier@docker.com> (github: dmp42)
feat(tags): add registry-to-registry transfers

This new endpoint takes a source registry to pull from and imports the specified
repository to the current registry. This follows the same syntax as how the docker client
pulls repositories.

In PaaSLand (both public and private), users want to run their images which are stored
from their own registries or from DockerHub. Specifically for [Deis](http://deis.io), we
need a way to be able to pull images from their registry (or DockerHub) over to our
in-house registry. We make the assumption that every user has access to their own
registry, so we can't tie down to mirroring from a single remote. The only way we see
that we can in the current implementation is to:

1. run a docker client
2. pull the image from the client's registry
3. push the image to the PaaS' in-house registry (after doing some last-mile layer
   configuration)
4. pull it down from the host that will be running the application.

This is too slow for our needs and is very inefficient (pull, push, then pull again).
We'd like to have some way that we can import an image directly from a remote registry.
This would reduce the processing time significantly.

This commit introduces a new endpoint for the in-house registry:

    POST /v1/repositories/<namespace:repository>/tags 'src=example.com:5000/busybox'

This endpoint will pull the repository and all corresponding tags that come with it from
the remote registry and store it locally. If the repository already exists, then it will
pull any layers missing from the remote and update the tag metadata to point to the new
image IDs. This behavior is equivalent to how `docker pull` works.
feat(tags): import from a single tag

Like the docker client, if you specify the source to be of
<NAMESPACE>/<REPOSITORY>:<TAG>, then it will import only that specific
tag from the remote registry.
blacklist backports.lzma v0.0.4

backports.lzma recently bumped up to v0.0.4, adding namespace support
to the package. However, they forgot to call declare_namespace() in
their __init__.py. This causes pip install failures when running

    pip install file:///docker-registry#egg=docker-registry

From inside the Dockerfile.