def populate_markov_chains
    @markov_chains = {}
    @words = {}
    @first_words = {}
    source_parser.each_sentence do |word_list|
      next unless word_list.length >= 2
      @first_words[word_list[0]] = true
      word_list.each_with_index do |word, index|
        @words[word] = true
        next_word = word_list[index+1]
        chain_add word, next_word if next_word
      end
    end
    prune_markov_words
  end
def populate_markov_chains
    @markov_chains = {}
    @words = {}
    @first_words = {}
    source_parser.each_sentence do |word_list|
      next unless word_list.length >= 2
      @first_words[word_list[0]] = true
      word_list.each_with_index do |word, index|
        @words[word] = true
        next_word = word_list[index+1]
        chain_add word, next_word if next_word
      end
    end
    prune_markov_words
  end
populate the @markov_chains hash