docs: def get_key_from_url(self, url):
          """ parses the url into a list of folder locations
          
          We take a URL like:
              http://rest.ensembl.org/sequence/id/ENST00000538324?type=genomic;expand_3prime=10;expand_5prime=10
          and turn it into 'sequence.id.ENST00000538324.genomic'
          
          Args:
              url: URL for the Ensembl REST service
          
          Returns:
              a parsed unique database key for the URLs data
          """
          
          key = url.split("/")[3:]
          
          # fix the final bit of the url, none of which uniquely define the data
          suffix = key.pop()
          suffix = suffix.split(";")[0]
          
          # convert "LONG_ID?feature=transcript" to ['LONG_ID', "transcript"] etc
          id = suffix.split("?", 1)
          suffix = id.pop()
          if "=" in suffix:
              _, suffix = suffix.split("=")
          
          key += id + [suffix]
          
          # replace characters not tolerated in keys and remove blank entries
          key = ( x.replace(':', '_') for x in key )
          key = ( x for x in key if x != '' )
          
          return ".".join(key)