refactored datamodel
refactored store api