More GHC extensions (running 7.6.2 here)
Module name
Make ∪ the main name to avoid instance on type aliases
Layout, unicode, some warnings
join' is bind, part 1
Define bind directly