first commit src lib and makefile