XD-1708 (slight improvements)

Proposed changes for XD-1708:

I was confused by the method signature in `ModuleDeploymentWriter.writeDeployment`:

```
Collection<Result> writeDeployment(
        Iterator<ModuleDescriptor> descriptors,
        ModuleDeploymentPropertiesProvider provider,
        ContainerMatcher containerMatcher,
        Iterator<Container> containersToMatch)
```

The third parameter is called `containerMatcher` and the fourth parameter is `containersToMatch`. It seems
to me that an object called `containerMatcher` should be able to match containers on its own.

Therefore I introduced a new `ContainerMatcher` implementation that wraps another `ContainerMatcher` and also accepts container ids that should be excluded from matches. This puts the logic in `ContainerMatcher` (which is where it should go since it's one job is to match containers) and allows for easier reuse down the line if we need it.

Note that this uses the Google Collections library.