Dev/burgundy/blacklist refactor

This commit extracts the blacklist code from `config` into its own dedicated class.
This was done to make it easier to benchmark test the performance impact of blacklist filtering,
but it's a worthwhile refactor in general.