update readme format
add protocol for repo
add mem repo , and add correct implementation for repo. fix test.TODO: need more tests.