(#8045) Debian package build should produce source files

Previously the rake taks to build a Debian package would not contian the
source files.  Commit changes behvaior to build source files as well.

Patch from: Max Bowsher

Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
(#8045) Remove ext/debian/changelog

The ext/debian/changelog file is quite outdated and gives the appearance
of a very old (outdated) package.  The rake task for the debian package
builds generates the changelog on the fly, so the file can be safely
removed.

Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
10672 - tests fail on rspec 2.7.0

We used to do require for the spec_helper based on __FILE__ but this
casues problems because ruby require will keep track of things it has
required before based on the path passed to require.

RSpec 2.7.0 has made calling its config blocks more than once a critical
error so the combination of doing requires with different paths triggers
this error.

Switched to just using require 'spec_helper' instead
10669 - Security plugins should know which msgid they are receiving

The MC::Message object can now store an expected_msgid for messages
of type :reply.  This can later be read by security plugins as a hint
but they should deal with the fact that it might be nil.

The MC::Client sets this when appropriate
10671 - Security plugins should not decrypt messages for other clients

Create a helper function on the MC::Security::Base that security plugins
can use to decide if they should do all the hard work.

The basic structure of a security plugins decode phase is:

  msg = deserialize(payload)

  decrypt or decode(msg)

the 2nd step is generally the really expensive step where SSL or RSA
comes into play, these plugins can now use the should_process_msg?
helper to raise an appropriate exception if the message is not for us
before doing the expensive work
10671 - Security plugins should not decrypt messages for other clients

Fix a failing test for ruby 1.9.2
10670 - MC::Client should unsubscribe from topics it does not need anymore

The client subscribes to topics for replies but never unsubscribes,
further each client instance track what it is subscribed too.

This caused a few problems:

 - badly written connectors could in some cases have multiple
   subscriptions causing multiple replies to be received
 - while the client is idle messages are still being pushed into its
   buffer which would result in a lot of messages being processed we
   really should not care for

We now unsubscribe from topics when we're done with them avoiding most
of these problems
5939 - mc-rpc should have native batching

Move Array#in_groups_of monkey patch into main set of monkey patches
that always gets applied.

Avoid applying our monkey patches if ruby provides the functionality
already - latest ruby has sortable symbols already.

Add tests for our monkey patches
5939 - mc-rpc should have native batching

Add native batching to RPC::Client instances by adding a special case
runner that use the new direct addressing mode.

Clients can activate this in 2 ways:

   client = rpcclient("rpcutil")
   client.batch_size = 10
   client.batch_sleep_time = 1

   client.ping

An alternative approach would be:

   client = rpcclient("rpcutil")

   client.ping(:batch_size => 10, :batch_sleep_time => 1)
7899 - Create an ActiveMQ specific plugin

Add an ActiveMQ connector, tests and docs.

This connector use the following queues and topics:

 - A topic per agent and collective - <collective>.<agent name>.agent
 - Replies goes into short lived queues - <collective>.replies.<unique string>
 - Each node subscribe to a queue with a JMS selector matching its
   identify - <collective>.nodes

The model of replies require the use of gcInactiveDestinations in
ActiveMQ to purge old unused short lived queues.  The hope is that we
will use actual temp queues in future but there's some issues
configuring these reliably in ActiveMQ

Each node subscribes to the nodes queue and use a JMS selector, this
requires a queue specific connection for broker to broker comms that
has conduitSubscriptions disabled.
7899 - Create an ActiveMQ specific plugin

Update example ActiveMQ configs to support direct addressing and
the ActiveMQ connector plugin.

Remove the Mesh example as it's not working 100%
7899 - Create an ActiveMQ specific plugin

Small change to optimize the amount of queues being created, a process
will now reuse the same queue for discovery and the eventual RPC request
this is fine since it's not multi threaded anyway
10864 - Add an optional ping distribution graph to the ping application

Add a --graph option that uses a small single line spark line to
indicate response distribution

The sparklines idea is initially from https://github.com/holman/spark
but this implimentation is using a slightly different algo

main: fix some whitespace issues
7772 - Allow random pickup of discovered in the client class

Add a #limit_method= method to the RPC Client.  Add tests for
limit_target= and some small optimizations to how that method works
10864 - Add an optional ping distribution graph to the ping application

Allow the ping graph to be enabled using the config file
10864 - Add an optional ping distribution graph to the ping application

Small update to the sparklines logic.  Add encoding hints to the top
of the file needed for ruby 1.9 compat
10883 - Syntax errors in Applications not correctly parse and displayed to the user

Change the behavior of the PluginManager to raise errors as well as log
errors when a file fails to load.  This behavior is optional so we're
able to maintain old behavior in places where getting exceptions might
be problematic.

The Applications#run method now show a friendly error and backtrace
which would hopefully help users get to the bottom of the problem
10830 - Release 1.3.2

Update release notes and versions.  Also a small cosmetic fix to output
10830 - Release 1.3.2

Fix release date
9847 - Messages should support arbitrary destinations

Add reply_to handling to the message object, option parsing and
rpc client.

Messages with reply_to set will be treated like fire and forget
ones since the clients will never get the results anyway