Replace RevisionMetadataIndexer with DirectoryMetadataIndexer
This will make it easier to support indexing from releases in the future,
as it will remove the strong dependency on revision ids in the database
and interfaces.
The existence of the indexer/table is mostly to deduplicate work between
origins with the same head revision, and we do not use it outside this
context, so this should have no impact.
The DB migration works by dropping both tables and re-indexing from
scratch; which is necessary as we need to replace revision ids with
directory ids.