Tidy up a bit, and fix reaction grid handling of new reagents. TODO: rewrite reaction grid onCellChange handling, because it's nasty.