Fullly working CRUD functionality.