Monadify deSugar/DsArrows: use do, return, applicative, standard monad functions