Scala implementation of some basic concepts from Category Theory, some of the example are taken from http://learnyouahaskell.com/