merged from rebased async-validations
Updated validator with latest master changes that got lost in rebase
Updated tests to support the async nature of new validate
Merge branch 'master' into interlock-async-validate
updated the validator to be async
spec fixes
last fixes + removed one test (temp)
merge