Restructured project into multiple modules