Added ValidatingInterface and abstract ValidatingModel. Renamed getValidator() to makeValidator(). Strong typed array parameters. Cleaned up docblocks. Added the restoring event listener.