addding caching and markdown back in