modified public header file
reworked entirley library