Data stores to have new `data.max` & `data.maxDepth` properties, updated the following methods to return a promise: `data.batch()`, `data.crawl()`, `data.del()`, `data.generate()`, `data.set()` & `data.sync()`, updated `data.generate()` to accept a String retrieve or Array to batch records, fixed `promise.resolve()` & `promise.reject()` to resolve on the next tick, updated `promise` unit tests

Fixing a conditional statement