Minor issue passing errors to validateFunc

I noticed if you pass a non-null value, that is not an instance of
Error as err to validateFunc it will return a 200 status code, even
with isValid set to false e.g.
````
validateFunc: function(username, password, callback) {
return callback({error: 'test error'}, false, null)
}
````
This PR just contains a unit case to highlight this, what should the
expected behaviour be here?
Merge pull request #10 from johnbrett/master

issue passing errors to validateFunc