iMVC architecture project