Add limitation of filter options based on available data

This limits the filter options to those relevant to the current data set.
Once a filter is selected, the other filters are reduced to the options available in the filtered data set.

As the server-side response will return only the options available for the filtered dataset (including the column you just filtered on), the frontend keeps track of the options for the first and last columns that were filtered on to improve usability.

This currently isn't enabled by a configuration switch, but it possibly should be, especially as I don't have a good test setup for non server-side, non ajax tables.
What do you think?

I think it's fine. $filter is never set in any of the code I can see, nor is it read in this function