findMatches
public static <T> int[] findMatches(java.util.List<T> inputs,
                                    java.util.List<? extends <any>> tests)
Attempts to match inputs to the specified tests. In the best way that all inputs are used by one test.
 Will return null in any of these cases:
   input/test lengths don't match. This is only for matching paired outputs.
   any input doesn't match a test
   any test doesn't match a input
   If we are unable to determine a proper pair
- Returns:
 
- An array mapping inputs to tests. ret[x] = y means input[x] = test[y]