first pass on proto-persistent objects