Add rudimentary caching