Major external API changes
- history no longer exists (we're storing it entirely on disk)
- added reverse-entry and apply-entry interfaces
- load! now incrementally loads history, applying each entry into current
- fact-base now caches earliest-entry and latest-entry for internal use (not guaranteed to be accurate; it will eventually use these to decide whether to search on-disk state from the beginning or end)