Validator

the main reason for implementing it as a struct was to be able to put another fields into `multiValidator` but it seems we dont need anymore, so i changed the implementation as you suggested.