13028 - Division by zero when no agents are discovered in verbose mode

This primarily fixes a bug introduced while working on #12865.  We
showed the progress bar earlier there to improve the user experience but
we didnt do sufficient checks to avoid showing it when nothing was
discovered.

Also fix some behavior on the rpc application where it would print the
call stats showing 0/0 host succeeded which was confsing.
13040 - When using pool connection syntax the stomp and activemq connectors does not set the connection to reliable

Reliable connection in stomp means the gem takes care of retrying,
resubscribing etc.  This is essential to proper operation of mcollective
but we relied on defaults present in the gem for this setting.

We now explicitly set this behavior.
13040 - When using pool connection syntax the stomp and activemq connectors does not set the connection to reliable

Update tests
13020 - Handle Stomp 1.2.0 Stomp::Error::NoCurrentConnection better

While adding Stomp 1.1 support to the Stomp gem upstream tightened up
various connection handling issues in the gem.  It now raises an
exception when you try to receive on a disconnected socket so we're
handling that on our side.

For gem 1.2.0 there will be a complete lack of logging when this happens
but thats a bug in the Stomp Gem, I've also sent a pull request upstream
to address that issue.
13020 - Handle Stomp 1.2.0 Stomp::Error::NoCurrentConnection better

Allow the test to run on machines with older stomp gems
13064 - implemented_by scripts should have a conventional place

We support actions in external commands but do not provide a canonical
place to put them.

Having a known convenstion means the plugin packager can be programmed
to deal with these files automatically.

After this commit if you specified a implemented_by script like:

   implemented_by "foo.sh"

The script will be searched for in all the libdir in
libdir/agents/agent_name/foo.sh till it finds it. If a full path is
supplied the full path will be used instead.
13064 - implemented_by scripts should have a conventional place

Update changelog
13105 - MC::UnixDaemon should remove the pid file it created on exit

The daemon when configured to write a pid would not remove it when it
was done.

Rather than try to catch all exceptions specifically and install trap
handlers with exit logic sprinkled all over we now have a single rescue
block in the daemon that handles that and the UnixDaemon class will
remove the pid file when its done.
maint: remove executable flag from rb files that should not have it
13165 - support new ssl specific logging callbacks in stomp 1.2.1

Add on_ssl_connecting and on_ssl_connected logger callbacks for
stomp gem >= 1.2.1
13207 - receive failed: SSL_read:: no start line errors when using SSL or AES security plugins and Stomp+SSL

Ruby < 1.9.3 had a bug where it does not correctly clear the
queue of errors while reading a key.  It tries various ways
to read the key and each failing attempt pushes an error onto
the queue.  With pubkeys only the 3rd attempt pass leaving 2
stale errors on the error queue.

In 1.9.3 they fixed this by simply discarding the errors after
every attempt.  So we simulate this fix here for older rubies
as without it we get SSL_read errors from the Stomp+TLS sessions

We do this only on 1.8 relying on 1.9.3 to do the right thing
and we do not support 1.9 less than 1.9.3

See  http://bugs.ruby-lang.org/issues/4550
13207 - receive failed: SSL_read:: no start line errors when using SSL or AES security plugins and Stomp+SSL

Update changelog
13285 - change default logging for clients

Previously we discarded all logging on the client by default, we now
default to using the console logger at level warn.

The reason for this change is to prepare for some upcoming changes wrt
SSL setup and recent changes in the Stomp gem that makes it easier to
report back to the user in the case of failures
12597 - Create Plugin Packaging

MCollective plugin application allows us to package mcollective plugins as
debs or rpms using the mco command. Plugin types are defined by definition
classes that populates a list of files and metadata which are in turn passed
over to packager classes which will build the action package.

Currently agent plugins are defined in AgentDefinition and debs and rpms are created with the
OSpackagePackager, which uses FPM to output the packages.

Additionally the info action will display plugin related metadata and a list of packages
that will be created from a target directory.
12597 - Create Plugin Packaging

Update changelog