abstract the validator class to tack on some different types