Fixed a bug where an exception thrown from a field's validate() function's callback would be caught even though the error happened in the callback, not the actual validate() function. Now exceptions from the callback are rethrown.