Add funcCallRequired rule

funcCallRequired works as funcCall, but causes validation of the field to stop and display the returned error, this means that unlike funcCall, returning a string from the function causes the field to be required.
See #90