first pass rewrite

- rewrite with promises using bluebird instead of async library
- cslFetcher functions -> CslLoader class
- account for renamed-styles.json
- LocaleManager
- EngineCache and CiteprocEngine container classes
- allow CORS
- use npmlog everywhere
fix resolving renamed styles that are dependent
cleanup

- move data preparation for CSL.Engine into citeprocnode.js
- allow override of config variables wit command line args
- give engine cache 90% - 110% window so we don't garbage collect too often
- on server benchmark timing that should be removed before deplying
clean up benchServer

and move testallstyles to its own test
update citeproc.js and rename

citeproc.js includes the code the make it work as a module now so there is no
need for us to make a distinction. This file can be taken without modification
from the citeproc-js repo after building it for release.
various fixes

- check with localeManager if locale is available, otherwise use en-US
- fix references from citeprocEngine to cslEngine
- fix engine caching string having blank locale
- config serverside benchmark timings
more fixes and cleanup

- remove comments documenting old code
- rename module cslFetcher to styles
- put all of request processing (after full request received and work starts)
into promise chain so all throws/rejections are handled in one place and we
get our stack traces if appropriate.
update packaged node_modules and package.json
revert jsdom to working version

the new html parser introduced by jsdom in 0.6.0
https://github.com/tmpvar/jsdom/commit/0d89bf5b6b2c5aecd4477392eba2b6175f942fa1
seems to have broken our csl_nodejs_jsdom, presumably by behaving better and
breaking some of our workarounds. For now we'll just include the last version
of jsdom that worked in node_modules and set the required versiont to that
range in package.json
update csl and csl-locales