Coursera course: "Functional Programming Principles in Scala" solutions.