added a in memory state store, todo: organize and cleanup, seperate files
re org and added reset vote
refactoring