added hash-functions.c and header file