Solution to Question 2 - Functional interfaces and Lambda expressions and Streams