The memoization works for counting solutions, but I am returning the wrong actual
solution list.  Pretty close, but I am still going to commit this partially working
version for the time being.