There's 2 different things.  There's the book and its table of contents, which is only fetched once, and there's each page of the book, which is fetched on demand.  Each page is represented by the CurrentPage class above, which does not fetch on initialize.  The book, however, is truly only loaded once.  I've been contemplating a cache for pages that have already loaded, but that is unrelated and would be a feature for a future pr.