Updated classes, added comments

This should make it easier to figure out what goes where. Also made
Solver objects take an array of Equations as parameter when constructed.