Update controller, remove private methods, and add hard delete functional