added snapshot tool and cleaned up node app.js callback tree