Topic/decoder syntax

This adds the decoder syntax mentioned in in #41.

Note that travis seems unable to get scalaz-stream when creating this pull request, but it compiles locally.