re-organized proejct layout