built some create and read functionality