Exam project for course OOP 2014 @ Faculty of Engineering Science @ KULeuven