add a generic rate udf
rate function fully functional
add git ignore