Improved way to handle scroll_y effects updates

This addresses a problem where programatic setting of
scrollview.scroll_y was followed by an automatic reset of this value to
.99 when interactive scrolling happens afterward.

In speaking with tito, the previous solution, to add a set_scroll_y()
method in ScrollView, would be better replaced with a binding. However,
adding a call to update_effects_bounds() at the top of the general
update_from_scroll() method solves the problem.