Called to update the gizmo after updating the bound data. This acts slightly differently depending on whether we're between begin/end sequence calls (for instance it will trigger individual undo transactions if not between Begin/End calls).