#21 updated file order hierarchy and also makefile