Autogenerate channel indices on outgoing messages.
Rollback the dispatch registration skipping for now.
Deduplicate tuple type deduction.
No need for empty default constructor bodies.

They can be replaced with ctor() = default.
Enforce the slot dispatch transition.

Slots are now bound to return the correct transition dispatch type,
which at least forces the implemenation to stick to the messages
specified in the message transition protocol.

Also, defaulted some special member functions where it was possible.
Reworked the RPC to track types more accurately.
Drop some unused forwards.
Synchronize Raft with RPC changes, part 1.

Renamings dispatch_t -> basic_dispatch_t, implements -> dispatch, and so on.
Merge https://github.com/andrusha97/cocaine-core into andrusha97-cocaine-core
Fixed Raft building with new RPC stuff.
Fix build with g++ 4.4.
More cleaning up.
Codestyle and stuff.
Fixed wrong static_assert message.
Beautifulized the result_of<T> for streaming_tag.
Enable Travis CI notifications for Slack.
Properly name the message queue variable.
Fixed codestyle a bit.
Disable clang on Travis CI.

For some reason, clang builds on Travis CI generate a godzillion of
errors, so better disable it again.
Move out all the threading code into a new class.

Named runnables, threading and I/O reactor maintainance are now a part
of the new io::chamber_t class.