INF2611 Assignment Project Refacroting