Add includes, src, tests file and the Makefile