don't rely on cb's process.exit(-1) for flow control
add unit tests for build/index.js wip