Accepts piped input from stdin

Fixes #448
Closes gh-505
New rules: (require|disallow)NewlineBeforeBlockStatements

Fixes #65
Tests: clean up string checker tests
Errors: report Esprima parse errors as rule violations.

Fixes #490
Prepare for version 1.5.9
1.5.9
Errors: ability to suppress errors via inline comments.

Fixes #335 and Fixes #486
Docs: highlight the "null value" error suppression technique.
Errors: allow for lenient spacing in the error suppression comment detection.
Setting default tree to empty object

In order to allow errors to propagate in string-checker.js

Closes gh-554
Update dependencies
Use correct logic for piped input

Ref 94870e3eaa7b4f9e0b08da2b63f16885030a3edb
Improve cli-config module

Allow load jscs config json file with comments that's not called as ".jscsrc"
CLI: Remove artifact of old stdin implementation
Add link to the Atom editor plugin for JSCS

This change adds a link to the Atom editor plugin.
It's had about ~5.8K downloads so far and may be worth mentioning

Closes gh-571
Improve docs

* Remove duplication for rules disabling in presets

* Use js syntax for js

* Simplify docs a bit
Tweak .gitignore pattern

This changes the `.gitignore` patterns to only match the `node_modules`
folder for `node-jscs`, in a way that does not interfere with projects
that check in their `node_modules` folder into git.

Closes gh-575
Add failing test for reading files from stdin

See #564. Files larger than one page size are incorrectly concatenated
when read from stdin.
Properly concatenate large files read from stdin

Array#join, by default, concatenates with a single comma. How useless.

Explicitly specify we'd like to join with the empty string to avoid
introducing syntax errors into JS read from stdin.

Fixes #564
Closes gh-565
Improve stdin support

Only read stdin if there were no files supplied and not in
tty mode or '-' supplied as first argument.

Fixes #563
Closes gh-567