static matchFunc(match, key, value) {
        if (_.isArray(match)) {
            return function (item) {
                let valueTest = true;

                if (_.isArray(value)) {
                    valueTest = value.indexOf(item.get(match[1])) > -1;
                } else if (value !== 'all') {
                    valueTest = item.get(match[1]) === value;
                }

                return item.get(match[0]) === key && valueTest;
            };
        }

        return function (item) {
            key = key === 0 && value ? value : key;
            return item.get(match) === key;
        };
    }
### Match Func
Figures out how to match across various combinations of keys and values.
Match can be a string or an array containing 2 strings
Key and Value are the values to be found
Value can also be an array, in which case we look for a match in the array.
@api private
@param {String|Array} match
@param {String|Integer} key
@param {String|Array} [value]
@returns {Function} matching function