setup: save cache as json. make cache reasonnably relocatable