Rearchitected the system to be more modular

Rearchitected the system to be more modular and easy to extend. Also I
added a bunch of new stats and formulas.