Split Reference.accession into accession and version

It's a bit annoying that the optional version number is included in the Reference.accession column. For one, it makes querying by just accession (without version) hard.

Plan of action for migration:

  • Add Reference.version column. #400
  • Update codebase to write versions to Reference.version (in addition to Reference.accession). #400
  • Release.
  • Populate Reference.version using Reference.accession. #401
  • Add unique index on Reference.accession and Reference.version. #401
  • Drop unique index on Reference.accession. #401
  • Update codebase to read from Reference.version and ignore potential versions in Reference.accession. #401
  • Update codebase to not write versions to Reference.accession.
  • Release.
  • Remove versions from Reference.accession.
  • Update codebase to remove ignoring potential versions in Reference.accession.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information