Make enable/disable of filters multi-filter safe

With the addition of multiple filters, disabling by name was
throwing a concurrency exception in the while-loop. This now
makes use of an internal map which can be modified in place.