KTH MF2095 - Programming Task - Based on Exercises 11-14