fixed several design issues
implement updating read-state on serverside