Add onSubmit and onInvalid options

If you agree with this approach for a workaround to #49, let the merge begin and please feel free to improve documentation if you feel.
Else, the other approach is to shim `stopImmediatePropagation` and expose the `listen` method (if i have a little more time to do that, it'll come in a separate pull request).
I think it's more elegant to define just an empty function as a default and then calling whatever is in the property, default or user defined. But you can suit it to your preference. Thanks for accepting!