20550 - allow activemq ssl certificate and key to be set via environment variables

This commit adds the ability to specify the ssl key and cert used by the
ActiveMQ and RabbitMQ connectors as evironment variables.

When enabling SSL for the rabbitmq or activemq connector plugins, the
client will first check to see if an environment variable like

  MCOLLECTIVE_ACTIVEMQ_POOLX_SSL_KEY
    or
  MCOLLECTIVE_RABBITMQ_POOLX_SSL_CERT

has been set before looking in the client config file to determine the
key and or cert.
20550 - allow activemq ssl certificate and key to be set via environment variables

Changelog
18414 - Aggregate plugins should show up in mco plugin doc

In the past aggregate plugins did not show up when using 'mco plugin
doc'.

This commit adds the ability to mco plugin doc to show aggregate plugins
and adds ddl's for the three aggregate plugins that ship with
mcollective.
18414 - Aggregate plugins should show up in mco plugin doc

changelog
21429 - "mco plugin doc" fails with a unclear message when trying to describe a plugin that does not exist

In the past using mco plugig doc to describe a plugin that doesn't
exist but the type exists failed by raising an undescriptive exception.
An example of this would be mco plugin doc agent/rpcut

This commit changes the exception to a descriptive error message in the
style of "Could not find a 'agent' plugin named 'rpcut'"
21429 - "mco plugin doc" fails with a unclear message when trying to describe a plugin that does not exist

changelog
maint: fix failing plugin application test
main: fix failing plugin application tests on 1.9.3
21527 - Release 2.3.2

Update release notes, changelogs and Rakefile
maint: fix failing tests on OS X
21768 - fixup mcollective to use vendorlibdir

Prior to this commit, mcollective didn't use vendorlibdir for more recent
versions of Fedora. This commit updates that, in addition to a more
coherant variable name for it. This also removes ruby(abi) requirement
in favor of just ruby because packaging in F19 no longer provides ruby abi.
doc maint: Stop recommending stomp+nio+ssl for now

Scale testing for the next version of PE revealed that the stomp+nio+ssl
protocol blows up badly even on 5.8.0. Sooo we're back to not recommending it
again.

This commit also changes the examples to recommend stomp+nio when not using TLS,
and adds commented-out example stomp+ssl connectors.
21779 - Errno::ESRCH: No such process from M::Shell

In the past when calling #runcommand an Errno::ESRCH exception would be
raised when the systemu process terminated correctly. This was the
expected behavior but caused the logs to be spammed with the message.

This commit changes #runcommand to quietly catch the Errno::ESRCH
exception.
21779 - Errno::ESRCH: No such process from M::Shell

update changelog
15182 - Support Stomp 1.1 in the RabbitMQ and ActiveMQ plugins

A common user problem is that idle Stomp connections get expired
by session tracking firewalls and NAT devices.

Stomp protocol version 1.1 supports combating this with protocol
level heartbeats.

The Stomp gem added support for this in 1.2.9 but it was broken,
the upcoming 1.2.10 gem will support these properly in combination
with recent ActiveMQ and RabbitMQ version.

This commit adds:

  plugin.activemq.heartbeat_interval
  plugin.activemq.stomp_1_0_fallback
  plugin.activemq.max_hbrlck_fails
  plugin.activemq.max_hbread_fails

and the rabbit equivelants as well as extra logging.
stdin discovery plugin which can do json piped from mco rpc
Change rpc app over to use the stdin discovery

FIXME: This is pretty fugly inside the rpc client
FIXME: Test / document the changes to mcollective/rpc/client
Make things a bit less gross by cloning the client for stdin discovery
Add testing for default_discovery_method being set
Add raising error for the wrong --do options + test