Basic CRUD functions pretty much working enough for proof of concept