rename func to fn to overcome the fact that func is now a keyword

This pull just renames func at word boundaries (thank you nimgrep). It overlaps with pull #9.