Add persistence and JSON parsing