Adds files for task 4
Makes use of Java8 functions
Changes naming