edit and remove functionality