Ensure stomp library gets installed on deb systems. Fix #15342
20950 - Improve dependencies for Debian packages in MCollective plugin package

Use ${binary:Version} so upgrading packages still generates proper dependencies
20950 - Improve dependencies for Debian packages in MCollective plugin package

changelog
doc maint: missing dash on the vhost parameter
17667 - run() call in an agent can return incorrect Process::Status

A child process can only be reaped once. Calling waitpid(cid) in a
separate thread creates a race condition between the "main" systememu
thread and the "guardian" thread.  In case the guardian thread reaps the
child process, the $? variable is not properly updated in the "main"
thread and the wrong exist status (of the previous reaped child process)
is returned by systemu.

By calling waitpid non-blocking in a loop we make sure the child process
is always reaped by the main thread unless it was killed before the
child finished.
17667 - run() call in an agent can return incorrect Process::Status

Changelog
maint: fix type in SimpleRPC Intro
20233 - Make filters functions idempotent

This commit makes the filter functions in the rpc client idempotent.
20233 - Make filters functions idempotent

changelog
21104 - reply defaults should be cloned copies from the DDL

Previously we copied the default values from the DDL directly
into the reply structures for the data and agents.

This opened us up to edge cases where the cached copy of the DDL
could be modified for example:

Given a DDL file with:
    output :foo,
           default => "foo"

And an Agent with:
    action x do
       reply[:foo] << "a"
    end

The default in the DDL will become 'fooa'.

We could freeze the default but if the default was a hash or nested
hash we'd need to do nested freezez which might not really solve things
either as not everything supports freezing and there's just too many
edge cases.

We now just use Marshal to deep clone the defaults out of the DDL into
the agent and data replies, this avoid the problem completely at the
expense of some performance
maint: this option is confusing because already declared
       in the previous config example and value shoud be /mcollective
19751 - Fix and centralize handling of boolean values for settings

In the past boolean values in the config files where parsed in a bespoke
manner by the config class and individual plugins.

This commit adds a str_to_bool method to the util class which gives us
a consistent way of dealing with boolean like strings.
19751 - Fix and centralize handling of boolean values for settings

This commit fixes Util::str_to_bool handling of TrueClass and FalseClass
parameters.
19751 - Fix and centralize handling of boolean values for settings

maint: fix activate agent logic
21251 - Windows absolute paths are not identified correctly

This commit allows paths to include the windows directory name
when checking if a path is absolute.
21251 - Windows absolute paths are not identified correctly

changelog
20714 - Remove the rpchelptemplate and helptemplatedir settings

This commit removes the rpchelptemplate and helptemplatedir
configuration settings. The logic for discovering a template's
path has now been moved to the Util class, which will firstly
check the config directory, then fallback to /etc/mcollective.
20714 - Remove the rpchelptemplate and helptemplatedir settings

changelog update
20506 - mcollective log backtrace does not include line numbers on windows

This commit changes how we parse caller and exception strings so that
line numbers are correctly displayed when logging in Windows.
20506 - mcollective log backtrace does not include line numbers on windows

changelog