switch to Church encoded free monad transformers