changes to structure and makefile