Add support for validation hooks.

Sequelize supports beforeValidate and afterValidate hooks to manipulate data before and after validation. Calling instance.validate() prevented those hooks from being executed. This uses instance.hookValidate() instead to allow those extra hooks to run.