Remove duplicate code
Scope exceptions
Add type hinting in channel
Fix unit tests
Merge pull request #59 from romainneutron/improvements

Improvements