Make sure we can't get into any cache method before initializing

Note that methods that call into _inflightCache don't have to initialize
because the _inflightCache method does it for us
Write a migration to fix issue #90