Support building and publishing Docker images.

This provides reasonable behaviour for Docker publish/publishLocal tasks.
`docker:publishLocal` maps to `docker build -t [dockerTarget] .`
`docker:publish` maps to `docker push -t [dockerTarget]`
`docker:dockerTarget` has a default value of `[dockerRepository]/[normalizedName]:[version]`

I have other code that creates a new Ivy repository type, but this way was simpler. Also, there was no access to the SBT logging context in Ivy's API, making reasonable support for logging/errors more difficult.

Note:
dockerBaseImage, dockerRepository are defined outside the Docker config, making them easier to set for a user, but they have reasonable defaults.