Word Search II | Depth First Search + Trie

For this question we ask you to determine if it is possible to make certain words given a 2-d matrix of characters. What we mean is that you will be given a 2-d grid of characters as well as a list of words. You may start at any point on the grid and move from cell to cell without looping back to a cell already travelled through and see if it is possible to make every word in the list of words. Output all possible words that can be created in the EXACT order that they appear in the list. The input for the matrix will appear as a list of words to represent the matrix.

This is a companion discussion topic for the original entry at https://algo.monster/problems/word_search_ii/