Added options.sort, and allow default values in options

also adding new require-all usage, updated document and using mocha to run tests (which could be removed if you don't like)