refactor and add doc
path also get value as get, to refactor
listen basic changes on store
add first version without change