Port forwarding for UDP.

This required a change to the JSON config file that was not
backwards-compatible with the existing config. So I introduced a new config
entry for ports, moving from "Ports" to "PrivatePorts". Upon reading a config
file in the old format, it will adapt the in memory representation of the
config accordingly. When a new image is generated, it uses the new format.

Closes issue #33