Merge branch 'release/1.3.2' into develop
[CS] CI build on ruby 2.0.0
[CS] Remove log warning for Rubinius bug that was squashed
[CS] Simpler termination of Stream
[CS] Switch from mocha to rspec-mocks
[CS] Remove unused code to check for RBX
[CS] Execute actions concurrently

Since Asterisk 1.8, all commands provide a response with an ActionID matching the action, and all causal events are also tagged with the ActionID. This means that we don't need to wait for an action to complete (either response or event) before executing further actions.
[CS] Remove Object monkey patch except in tests
[BUGFIX] Object monkey-patching done properly
[CS] Make Client an actor
[CS] Move action/response association to Stream

This allows arbitrary stream usage rather than tying into the Adhearsion 1 philosophy of 1 each for events and actions
[CS] Reduce duplication in firing events from a Stream
Merge branch 'hotfix/1.3.3' into develop
[CS] Remove dependency on countdownlatch

We weren't even using it. Wtf?!
[FEATURE] Make #send_action block until a response is received

* Better actor-like behaviour. Async or future may be used in cases where this is desirable.
* Doesn't require complex callbacks in cases where sync behaviour is desirable.
* Attatches intermediate events to the response. I've not yet seen a use case for handling these events as they arrive, so batching them seems sensible.
* Currently a loop-de-loop implementation, needs to have future resource on Action removed
* Paves the way for complete encapsulation of the Action object
[FEATURE] Allow a stream to be logged in directly
[CS] Client should delegate login to stream

Take advantage of new blocking nature of #send_action to avoid callbacks
[CS] Remove method that's not required
[CS] Whitespace
[CS] Remove synchronisation of Action state

Actions are now never leaked out of a Stream, so we don't need to worry about their state as much. This also means we no longer need future-resource.