concrete functor and monad transformers

#101Use rank 2 polymorphism for callCC