Re-implemented everything using ASP.NET.
Changed some requests to use JSON instead of FORM data.
Some work towards deleting the FIXMEGlobal instance.
Auth is missing, XSRF does not work correctly.
Add REST handler /systeminfo/filtergroups that returns the filter strings for all filter groups on the system.
Use these filter strings to apply filter groups to the source file picker.
Add filters to the beginning instead of the end of the list, so they are not overridden by more general ones.
If a file is excluded, add an include filter to include the file.
Add more metadata to the file list returned by server, so that the source file picker can display filters based on file attributes.
Correctly display 'X' in file list if a file is excluded by attributes and not included as a source (#4751).
Fix directory separator issue when loading the page and prevent opening folders in source file list.
The previous JS code incorrectly converted glob expressions to regexp which prevented them from showing the correct file states in the list.
This was only a UI bug and has no effect on the backend.