KiraDb constructors now create the index as-needed and throw errors
if this fails.

Updated tests to remove explicit createIndex() (except for the
second part of testFileBackingStore that recreates the index from
the backing store).

Added a PersistTest test that can be used to show the index does
persist and is created/erased only as needed.  To run the passes
separately, rather than in one pass, do the following:

  mvn test '-Dtest=PersistTest#firstPass'

Creates the index and fills it with test data.

  mvn test '-Dtest=PersistTest#secondPass'

Loads from the assumed-to-exist index and checks that the contents
are as expected.