added generic crud controller