Latest version of Node.js, citeproc-js, csl, csl-locale; use npmlog for logging; brushing and polishing.

Here is the pull request I promised.

Summary of the changes:

* Added lots of documentation to the README
* Updated the submodule versions for csl and csl-locales, to their latest.
* Updated version of citeproc-js to the latest
* Integrated npmlog for logging
* Updated / refactored the config file handling a little bit:
    * Some of the config parameter names changed (because of changes to logging).
    * It now uses a clean configDefaults object with _.extend().
* Some general refactoring in a few places, to move variable declarations closer
  to where they are first used, for example.
* I made the detection of style filenames a little bit more robust
* Within the async/waterfall routines, I gave the error handling and control flow 
  a thourough once-over.  I documented the rules for calling callback() and return,
  and made sure every routine robustly implemented them.
* Cosmetic changes:
    * Ran sampledata.json through jsonlint, to prettify it.
    * tabs -> spaces
    * I added spaces in a lot of places for readability (sorry!  I couldn't help
      myself!)
    * Added a lot of comments, esp. to enumerate object members, their constraints,
      and what they are for.