new complete_match/get_victim functions to clean up code for role commands

also !roles/!gamestats/!fgame accept partial names now

almost every role has been tested, shouldn't be any major bugs probably
I'd also do role == "guardian angel" rather than role != "bodyguard" -- this future-proofs the function against adding additional roles that can use !guard