removed float (use strings to store decimal values)
Refactored controllers to move some common code to the models