[PropertyAccess] Removed the argument $value from isWritable()

To keep isWritable() and setValue() consistent, the exception thrown when only
an adder was present, but no remover (or vice versa), was removed.
[Validator] Refactored ValidatorTest and ValidationVisitorTest into an abstract validator test class
[Validator] Prototype of the traverser implementation
[Validator] Decoupled the new classes a bit
[Validator] Moved visitors to NodeVisitor namespace
[Validator] Added ObjectInitializer visitor
[Validator] Extracted code for group sequence resolving into GroupSequenceResolver
[Validator] Throw exception if ObjectInitializer is constructed without visitors
[Validator] Renamed $params to $parameters
[Validator] Made tests green (yay!)
[Validator] Added TODO reminder
[Validator] Added note about Callback constraint to CHANGELOG
[Validator] Completed GroupSequence implementation
[Validator] Removed unused use statement
[Validator] Finished inline documentation of ExecutionContext[Interface]
[Validator] Fixed failing tests
[Validator] Completed test coverage of ExecutionContext
[Validator] Updated deprecation notes in GroupSequence
[Validator] Implemented BC validation of arrays through validate()
[Validator] Added a note why scalars are passed to cascadeObject() in NodeTraverser