Fixing the bug when filters are not invoked for 'array' operation parameter type, adding unit test for this case as well

It seems like when the the 3.1 update was released, one thing became broken. It's about filters and the way they are called. In 3.0 version of the library, the filters were applied to operation parameter during the validation in SchemaValidator class. But in 3.1 they were moved to the phase when Visitors are called. The logic inside visitor now behaves the way that sometimes the filters are not applied, although they have to be. I've added the test case illustrating the behavior, and the possible fix for this case.