19665 - enable direct_addressing by default

In the past direct_addressing was disabled by default.

With the deprecation of the stomp connector we have now enabled
direct addressing by default.
19665 - enable direct_addressing by default

Update changelog
19367 - Missing StringIO require

require stringio in lib/mcollective.rb instead
19367 - Missing StringIO require

update changelog
19564 - Data plugins should prepopulate output like agents do

In the past data plugins did not initialize output fields or allow for
default values.

The data plugin result class has been updated to initialize output
fields and also to allow default values.
19564 - Data plugins should prepopulate output like agents do

changelog
17034 - MCollective Async Result Handling doesn't work as expected with RabbitMQ

In order to process async style requests where the request has a reply
that indicates a different destination the request must have correct
reply-to headers set.

Previously the connector did not set this when a custom reply-to address
was specified in the message, this commit fixes that.
17034 - MCollective Async Result Handling doesn't work as expected with RabbitMQ

Provide test coverage and changelog
19734 - Make default port 61613 in connector plugins, to match convention/docs

Docs and comments for the ActiveMQ connector stated that the port would default
to 61613 (the closest thing to a standard Stomp port we've been able to find) if
unspecified; instead, it defaults to 6163. This commit changes the default port
to match what we said, and does the same in the RabbitMQ connector.
19734 - Make default port 61613 in connector plugins, to match convention/docs

changelog
Docs: New server configuration reference

This page describes all of the server settings most users will need, including
info about the connector and security plugins.
19752 - Friendly and informative errors when there's no libdir

There is no default libdir so when users do not set it they get
very unfriendly errors from File.exist etc which does not really
say what is wrong.

This commit adds a better error message when libdir is not set
19827 - Application#halt does not work if discovery data is supplied

Prior to version 2 the discovery situation was real simple, discovery
time == 0 means there were no discovery done at all.

Since version 2 things are a lot more complex as discovery time can be
zero if someone supplied specific discovery data either through --nodes,
or -I or through the API.

The halt() helper needed updating for the post 2 world and unfortunately
this means the behaviour also had to change slightly

it would exit with 0 when no discovery done but any responses were
received, effectively masking situations with no discovery but with some
failures.

This refactors the code and changes the meaning of 0 slightly in the
case of no discovery to: no discovery were done and > 0 responses were
received, all ok.

Thus in cases where discovery isn't done for whatever reason you still
get correct exit codes in the case where any results were failures.
19694 - Remove plugin.discovery.timeout

The plugin.discovery.timeout option used to be useful a long time
ago as a way to influence default discovery time.

It's not been used for this for a long time and now doesn't really
change anything in a meaningful way, this commit removes this feature
19673 - remove topicprefix, queueprefix, and topicsep

The old stomp connector tried to be configurable by letting you
pick how a target like /topic/foo.bar would look using the topicprefix
and topicsep options.  Ditto for queues using queueprefix.

We've come to the conclusion that a generic stomp connector will just
never work well and removed that connector.  This commit removes these
unused settings too
19694 - Remove plugin.discovery.timeout

Remove another example from the docs that reference this option we've
removed