return a column from an alignment as a dictionary indexed by seq. name.

    :param position:     the index to extract; these are in alignment
                         co-ordinates, which are one-based, so the first column
                         has index 1, and the final column has
                         index == size(self).
    :param missing_seqs: how to treat sequence with no actual sequence data for
                         the column.
    :return: dictionary where keys are sequence names and values are
             nucleotides (raw strings).

def get_column(self, position, missing_seqs=MissingSequenceHandler.SKIP):
    """
    return a column from an alignment as a dictionary indexed by seq. name.

    :param position:     the index to extract; these are in alignment
                         co-ordinates, which are one-based, so the first column
                         has index 1, and the final column has
                         index == size(self).
    :param missing_seqs: how to treat sequence with no actual sequence data for
                         the column.
    :return: dictionary where keys are sequence names and values are
             nucleotides (raw strings).
    """
    res = {}
    for k in self.sequences:
      if isinstance(self.sequences[k], UnknownSequence):
        if missing_seqs is MissingSequenceHandler.TREAT_AS_ALL_GAPS:
          res[k] = "-"
        elif missing_seqs is MissingSequenceHandler.SKIP:
          continue
      else:
        res[k] = self.sequences[k][position - 1]
    return res