Monadify typecheck/TcForeign: use do, return and standard monad functions