Hooked up all the methods and can spit out if invalid.
I plan to put a legality indication where QR! was, but the legality
analysis needs more checks (moves, ability, nickname, ball, fateful...
you get it) and stability.
Have fun playing with the initial legality checks 😄
Fix getValidPreEvolutions not decrementing level (the evo level is the
actual value, not 1 for levelup.
Did some performance analysis and optimized a little; the Valid Moves
are now only obtained once instead of 4 times in a loop; used a list to
hold the moves instead of constantly ToArray() which is a little
computation intensive.