added support to:
- force required validation to not accept empty values
- use a custom message for errors