At the moment, the program's almost good enough to run a tournament. There are just two things I need to add, which I just thought of (they'll be really easy to program).
All matches must have at least half the number of games rounded down plus one as the largest total number of games. For example, if the highest total number of games in a round is 3, each match must have at least 2 games. If the highest number is 5, each match must have at least 3 games. If the highest number is 4, each match must have at least 3 games (because it must have been a bo5, with no matches going to 5 games).
A player can't have a negative amount of wins.
The TO can't give wins to a Bye. Right now, the TO could have the Bye beat the player 100-0.
Those three things will all be really easy to program, and I think they're all that are necessary to make it the absolute minimum requirement. However, I'm still planning to add the other forms of seeding, ELO calculating after a match, and the ability to cut to double elimination brackets. It'd be annoying to have to go through this program for swiss, then go to a different program for brackets.