updated make file and project structure