cleaned up add/update for datagrid