added tests and simple crud