first pass on document crud