model caching

- adds basic model caching