input: Write a python function to find the top n most frequent words from a list of words.
  assert top_n_frequent_words(["apple", "banana", "apple", "orange", "banana", "banana"], 2) == [("banana", 3), ("apple", 2)]
  assert top_n_frequent_words(["hello", "world", "hello", "python", "world", "world"], 1) == [("world", 3)]
  assert top_n_frequent_words(["one", "two", "three", "four", "one", "two", "one"], 3) == [("one", 3), ("two", 2), ("three", 1)]
output: def top_n_frequent_words(words, n):
      from collections import Counter
      word_counts = Counter(words)
      most_common = word_counts.most_common(n)
      return most_common