Additional tests for cyclic coding.
Massive refactoring to destroy hell in channel layer.
Now channel level expecting acks and sending rets if it find errors.