Issue20

Journal: use cache for day offsets while scrolling
Fixes #20
For perfection, it would be nice to be able to distinguish a cache that happens to be empty (because there are no day headers on the page), from a non-existing cache.  Otherwise, we would recreate the cache on a scroll event, and it would come out as empty, which causes us to recreate it again on the next scroll event, etc.

(This likely doesn't matter in practice: the cache is only empty when the journal is empty, so recreation is fast.)