Add ability to require app ports to be available in the offer

Can be enabled by setting requirePorts = true in an app definition.