[CS] Take input components out of the loop of passing DTMF events to the recognizer
[CS] Avoid Celluloid deprecation warnings

* Magic finalisers
* Async bang syntax
[CS] Avoid Celluloid deprecation warnings

* Magic finalisers
* Async bang syntax
[BUGFIX] Components should transition state before unblocking

This prevents a race condition between unblocking on #complete_event and the state of the component having transitioned to :complete.

Was showing up in the Asterisk output tests occasionally.
[CS] RSpec deprecations
Merge branch 'refs/heads/develop' into feature/new_rayo

Conflicts:
	lib/punchblock/translator/asterisk/component/output.rb
	lib/punchblock/translator/freeswitch/component/tts_output.rb
	spec/punchblock/translator/asterisk/component/record_spec.rb