Smart matching for human names