breaking project into modules