Remove the ability to run multiple commands

Addresses #1747.
This removes the argument list iteration and spawning of multiple
tasks.
It's still possible to specify aditional arguments but now they're
ignored.

PR: #1752
spec the absense and wrong commands

PR: #1752
stringify all symbols in twitter hash


Fixes #1450
add robustness to tweets stream handling


Fixes #1450
monkey patch twitter gem to trap json parsing exceptions and use our own json parser


Fixes #1450
support :symbolize_keys options for json parsing


Fixes #1450
honor common to_json method signature


Fixes #1772
add ruby filter spec


Fixes #1772
Updated link in syslog documentation


Fixes #1724
specify ctrl-d to halt pipeline


Fixes #1767
CTRL-C Enter is OK too


Fixes #1767
Fix add_tag behaviour in dns filter

The filter should only modify the event's fields and tags if and only if
all resolves/reverses succeed. So we clone the event, modify the new
copy and return it if all operations succeed. Otherwise the original
event is not modified.

For performance reasons we could reverse the clone logic: clone the
event, modify the original event and, it case of failure, return the
backup.

Note: this changes the dns filter behaviour towards add_tag

Fixes #1795
filter/xml fix for LOGSTASH-2246: extract non-ascii content with xpath

Fixes #1803
Set the string encoding when parsing XML

Improves upon #1790

Fixes #1803
[RSPEC] Refactoring step 1

- Move helper functions in own modules and extend Rspec
- Refactor files into correct naming and paths
- Modify files to use new spec_helper and helpers
- Pin rspec to 2.14.x

Fixes #1758
Update gitignore file

Fixes #1758
Add missing tests

Fixes #1758
An other missing one

Fixes #1758
Fix performance tests

- date speed test only run when performance is enabled

Fixes #1758
[TESTING] Fix tcp input spec test

Fixes #1758