docs: def rev_comp( seq, molecule='dna' ):
  	""" DNA|RNA seq -> reverse complement
  	"""
  	
  	if molecule == 'dna':
  		nuc_dict = { "A":"T", "B":"V", "C":"G", "D":"H", "G":"C", "H":"D", "K":"M", "M":"K", "N":"N", "R":"Y", "S":"S", "T":"A", "V":"B", "W":"W", "Y":"R" }
  	elif molecule == 'rna':
  		nuc_dict = { "A":"U", "B":"V", "C":"G", "D":"H", "G":"C", "H":"D", "K":"M", "M":"K", "N":"N", "R":"Y", "S":"S", "U":"A", "V":"B", "W":"W", "Y":"R" }
  	else:
  		raise ValueError( "rev_comp requires molecule to be dna or rna" )
  	
  	if not isinstance( seq, six.string_types ):
  		raise TypeError( "seq must be a string!" )
  	
  	return ''.join( [ nuc_dict[c] for c in seq.upper()[::-1] ] )