Update Haskell example to zeromq-haskell v.0.5

Motivation: the previous (current) code is not working with the latest version of zeromq3-haskell (at least from 0.4). And IMHO quite a few examples have never been working.

I have converted most examples to use the monadic layer introduced from version 0.3. I left some to use ZMQ3  so both style co-exist.

Polling works with the monadic layer since 0.5

All updated examples have been tested manually with success.

PS: I have not been able to update "interrupted" so it makes sense in Haskell. In the current version (signal catched), the receive call does not exit (so it keeps waiting for a send).

Any further improvements/updates are welcomed. I might make so more cleanup later on.