added generic add method, preparing to update controller classes to use new method and remove duplicate code