another version with latest pull requests
all test ported to use mocha instead of expresso