An Haskell oriented introduction to Category Theory (with basket of cats!)