pairings designer: cleanup: eliminate a lot of debug output
pairings designer: comment-out call to mutate function not sure I need any more
pairings designer: try to randomize distribution of empty seats
pairings: refactor- use objects rather than assoc arrays to represent contests
pairings: track dirty bits so only changes need saved
pairings: re-implement "Optimize" function

uses a genetic algorithm to find a good matching
pairings: incorporate consideration for ratings difference

gives penalties for pairing people with unequal weights,
and the penalties increase in the later rounds.

This way, it will try to make the top players meet in the final
rounds.