Improve performance of filtering by name

Does this by caching the list of modules in MainModList instead of
calling the registry with each change.
Added parameters to CountModsByFilter

By passing in a list of mods we can avoid repeated calls to
registry.availble().
Improve performance of filtering

Make use of the cached copy of the mods.
General Cleanup

Renamed member _modules to m_modules
Changed _UpdateModFilterList to use cached mod list
Change AvailableModule to use a SortedDictionary

Seems to be a net win with speed and simplifies ByVerson.
Actually doing the change in ByVersion
Fixed conflicts