docker save: ability to save multiple images

Now from a single invocation of `docker save`, you can specify multiple
images to include in the output tar, or even just multiple tags of a
particular image/repo.

```
> docker save -o bundle.tar busybox ubuntu:lucid ubuntu:saucy fedora:latest
> tar tf ./bundle.tar | wc -l
42
> tar xOf ./bundle.tar repositories
{"busybox":{"latest":"2d8e5b282c81244037eb15b2068e1c46319c1a42b80493acb128da24b2090739"},"fedora":{"latest":"58394af373423902a1b97f209a31e3777932d9321ef10e64feaaa7b4df609cf9"},"ubuntu":{"lucid":"9cc9ea5ea540116b89e41898dd30858107c1175260fb7ff50322b34704092232","saucy":"9f676bd305a43a931a8d98b13e5840ffbebcd908370765373315926024c7c35e"}}
```

Further, this fixes the bug where the `repositories` file is not created
when saving a specific tag of an image (e.g. ubuntu:latest)

document multi-image save and updated API docs

Docker-DCO-1.1-Signed-off-by: Vincent Batts <vbatts@redhat.com> (github: vbatts)
save many: adding an integration-cli test

Signed-off-by: Vincent Batts <vbatts@redhat.com>
Merge pull request #5518 from vbatts/vbatts-save_many

docker save: ability to save multiple images
List all ports when calling `docker port container`

Docker-DCO-1.1-Signed-off-by: SvenDowideit <SvenDowideit@home.org.au> (github: SvenDowideit)
Merge Container and State mutexes

Resolved all deadlocks and fixed race between kill and
monitor.resetContainer
Fixes #7600

Signed-off-by: Alexandr Morozov <lk4d4math@gmail.com>
Some more style fixes

Signed-off-by: Alexandr Morozov <lk4d4math@gmail.com>
Merge pull request #6628 from SvenDowideit/6501-list-all-docker-ports

List all ports when calling `docker port container`
Merge pull request #7795 from LK4D4/style_fixes

Some more style fixes
Merge pull request #7775 from LK4D4/merge_state_lock

Merge Container and State mutexes