node-proxy: Stop on remove, restart in upgrade

Change the openshift-origin-node-proxy package to stop the
openshift-node-web-proxy service that it includes when the package is
removed.

Change openshift-origin-node-proxy to condrestart (restart
if already running) openshift-node-web-proxy when the package is
upgraded.

This commit fixes bug 1060274.
Bug 1067008 - Delete gear when missing a Cartridge Ident
Bug 1074627 - Removed unnecessary output
oo-diagnostics: improve suggestion for mco-client.log

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

When noting that the mco client log permissions are wrong, we now
suggest they might just not want to log to a file at all.
oo-diagnostics: detect more common selinux problems

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements
There are some common SELinux labeling issues that we can catch here;
if we don't, then debugging the resulting problem can be really tricky.
The most annoying ones are when administrators copy a conf file to
their home dir or /tmp, edit that, and them move it back into place,
giving things like /etc/hosts or broker.conf the wrong label.
oo-diagnostics: warn re vmware-tools on mco unsynced warning

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

When vmware-tools is in place, it can conflict with ntpd in trying to
manage the host clock. Warn the admin if this may be happening (but only
if mco is already dropping expired messages).
oo-diagnostics: handle missing host command

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

Some of the more important tests depended on the "host" command.
This change causes them to fail gracefully when it's not there.
oo-diagnostics: warn on node.conf/envvars mismatch

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

Sometimes admins update their settings in /etc/openshift/node.conf but
don't realize that the gears get the same settings from
/etc/openshift/env vars. Check broker and cloud domain match.
oo-diagnostics: remove enterprise RPM test from origin

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

The test for OpenShift Enterprise RPMs really doesn't belong here.
We can just add it in at the Enterprise project.
oo-diagnostics: refactor test for executable commands
oo-diagnostics: detect unreadable apache conf files

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

Sysadmins were sometimes running through the deploy or post-deploy with
a umask such that the conf files being created were not readable by
apache. This can cause a lot of annoying problems. Try to detect this.
Make dep handling consistent
Modify some test setups to work correctly in Origin context
Added User pending-op-group/pending-op functionality
Added pending op groups for user add_ssh_keys/remove_ssh_keys

lock_user/unlock_user changes:
 - pass user.id/app.id instead of user/app mongoid objects.
   This will help anyone with bson id does not have to fetch corresponding mongoid model to acquire user lock (eg: oo-admin-repair)
 - app.id is optional to acquire user lock. Once user lock is acquired, no one should get application lock to avoid deadlocks.

Any pending op related to capabilities will be protected by application and user lock or just user lock if app is not involved.

Fix oo-admin-clear-pending-ops: Use run_jobs for user and app

Fix oo-admin-ctl-user: Take user lock for updating user capabilities

Fix test cases

Added new test cases for Lock model

Default app_user_lock timeout is 15 secs and default user_lock timeout is 15 secs. User lock with heavy ops like plan update has timeout of 30 mins similar to app timeout.

More fixes + cleanup
oo-accept-broker: improve err handling & more

https://trello.com/c/CBLIqG00/214-1-oo-diagnostics-improvements

Somewhere along the way, oo-accept-broker stopped handling broker load
and run errors gracefully. Error output got combined with stdout, and
then that was truncated to the expected number of lines and used as the
expected response, meaning we got bits of stack trace instead of the
configuration values intended, and tried to actually use those.

Now, any error output is routed and noted separately. The error bubbles
up properly and is generally only noted once.

Also, a lot of separate calls invoking the broker for settings were
combined into a single call. This makes the script execute in about half
the time it required before.

Also, some settings were potentially being read from the production
settings file when the development one should have been used. This is
fixed too.

The order of the tests was changed around a little bit but everything
should otherwise work the same.
remove debug flag for rhc get status operations in cucumber tests
Rebalancing tests
Fix docs typo
Remove unused teardowns
Revert "Rebalancing tests"

This reverts commit 444c6a496f6826de78a4338e580d153d1620e406.