My take on exercises from the book "Functional Programming In Scala" by Chiusano and Bjarnason