Moved goal amount setting to SQLAlchemy

This is in part b/c the tests are failing when trying to set the goal
attribute of a participant. Setting that attribute now uses the current
db.session and adds a row to the goals table.
The goals.amount should *default* to NULL

Previously it was NOT NULL. That was not right at all.