Major refactoring, a lot more labeling. Still probably some errors (and can go over 31 if the human isn't paying attention), but I may try to work on more interesting projects for myself. Good starter project I guess!