Use path fields instead of `path_hash`

We are now using the `path` and `canonical_path` fields throughout the app, instead of the hashed variants, which we needed because of MySQL limitations.

We've flipped the index in the `host_paths` table to use the `path` field, and declared the hash variants as nullable throughout. We're not removing the columns yet, so that we don't break existing processes that try to write to them; we'll do that in a subsequent migration.

We also need to index the `canonical_path` field, to replace the index on `c14n_path_hash`.

This mostly reverts commit 52f0b9fc800a62468ee25d57fe95dec765d1fdc1.

This doesn't need addressing as part of this PR, but I think we can `map(&:canonical_path)` here, which saves canonicalizing again when we actually create mappings below.