The package accepts both javascript object and json file to structure schema

Refactored dbUtil.js and enabled users to directly pass in a javascript object, instead of having to use a json file, to represent schema structure. Also, the change makes both index.js and dbUtil.js more readable and "javascript-like".

Detailed changes:
1. moved the construction of major package components (such as generator) out of dbUtil.js
2. merged readSchema method and parseInput method to reduce unnecessary granularity
3. tested that the package works correctly with direct schema object

`assert.ifError(err);`