need to figure out the best way to intelligently reload json vs using what's cached