Pass Grid reference through the Body to each Row

Body now takes it's supplied reference to the parent Grid and passes it along to child Rows. This allows those rows to trigger events on the containing Grid. 

This was difficult before because the Rows are stored as a simple array, not a collection, so adding and removing rows meant lots of event bookkeeping.

Now, Rows can decide for themselves what events to fire on the containing Grid. This is a better fit for the project, since Rows are more likely to be overridden than the Body.