Refactor Save/Load of Boosts

This needs extensive testing so that we can be absolutely positive it doesn't break people's save. Every save I tried seemed to save and load just fine, though. And I'm not sure they could really, I basically just replaced hardcoded 0,1,2,3 with an array with the same numbers.

This will allow for saving custom data for boosts (no array saving yet, haven't worked that out yet, hence #770) That means we can finish moving a bunch of Molpy.x variables to their respective boosts and save/load them from there, too.

There will probably have to be some kind of version check for gamenum load at some point so none of that stuff gets saved to gamenums, but for now the values can be saved in the gamenum string and in the boosts string.