Bug 1053485 - Changing GID_MIN in login.defs prevents app creation

This patch was originally submitted by Josep 'Pep' Turro Mauri <pep@redhat.com>
Add support for multiple platforms in OpenShift.
Changes span both the broker and the node.

Add a setting named 'NODE_PLATFORMS' to broker.conf.
Add an optional attribute named 'platform' to cartridge manifests.
Add an optional 'Required' attribute for the 'Scaling' key to cartridge manifest.

Broker queries nodes of all platforms when building its cartridge cache.
Broker does not allow group overrides for cartridges of different platforms.
Broker uses the cartridge platform to filter nodes based on the 'kernel' fact.

Node handles the case when a web proxy cartridge is not collocated with a web cartridge.

Modify tests to take new logic into account.
Add tests to cover new code paths.
Fix "create scalable app with custom web_proxy" test expectation.
Fix getting cart from CartridgeCache in the context of an application.
Bug 1007830 - Better error handling around quickstarts.json loading
Merge pull request #4933 from brenton/BZ1053485

Merged by openshift-bot
Bug 1067008 - Guard gear delete from missing Cartridge IDENT
Merge pull request #4948 from danmcp/master

Merged by openshift-bot
Merge pull request #4949 from jwhonce/bug/1067008

Merged by openshift-bot
Merge pull request #4944 from UhuruSoftware/master

Merged by openshift-bot