main files, updated makefile, tests