Extracted validators into their own closures
Tests for refactored-out validators
Tidy up FilterType before refactor
Refactor how the possible values validation works.