decomposed lenses, added JSON CRUD