Initial commit adding source code, updating readme and adding makefile.