Refactored structure and changed build system to Maven