Create WeightedFilter and ProfanityFilter

Add initial specification for the WeightedFilter

Fixed extraneous path name for Filter

Minor refactor of getViolationFor()

Add ProfanityFilter and ProfanityViolation

Skip all filters since the player is exempt

Actually register new violation level

Add configurable weights and regexs for WeightedFilters

Attempt to make FilterConfiguration.build() work

Attempt #2 at fixing FilterConfiguration per @rsmy's suggestions

Correctly parse config, introduce deadlock

Fix ConcurrentModificationException on unregistering all filters on disable

Make filter configuration print if debug mode is enabled

Fix spin-lock on ProfanityFilter :satisfied:

Add temporary weight caluclation to test weight is getting parsed properly

Add documentation to Profanity Filter/Violation

Add documentation to Profanity Filter/Violation