Implement chain validator
Implement optional validator
Rename validator to validation