make save_measurement more flexible

1. Pass it the whole new measurement so it can record the
   measurement even if it we didn't complete the goal, etc.
2. stop passing in the prev measurement; it isn't used
replace "complete_goal" with "update_tdp"

It's the same, but:

1.  It can add a note on non-completion, but we don't do that,
    because we don't have a good way (yet) to decide that we didn't
    do something on a given day.  Later, we can do it for yesterday
    on the day-change.

2.  It drops any reference to $prev, which was passed but not used.
get both done and not-done measurements
update observers to expect LastState objects