Extract Validator base, SingleOptionValidator and ParamsScope into their separate libs