Spec for HAPROXYHTTP pattern.

We ran into parsing problems with this pattern and my first step was to
look at the tests. There were none so I took the apache log example and
adapted it for haproxy using the haproxy documentation format as the
example log string.

HELP! I am not sure why using date { timestamp =>
"dd/MMM/YYYY:HH:mm:ss.S" } doesn't set the event timestamp correctly so
the example uses mutate but at least passes.
Use date filter to set the timestamp from the haproxy accept_date
Remove date filter from haproxy parsing example.
LOGSTASH-1106 Adding additional file output path option documentation. This is to highlight functionality of the path option that was not previously documented, and to prevent additional pull requests for implementation of date-based log rotation.
unix input: remove socket in case of EADDRINUSE
wrap resolve/reverse actions in timeouts
- more work-in-progress implementing the config parser into logstash.
LOGSTASH-1118 - Option to add event fields from SQS message ID & MD5
Update HOSTNAME in grok-patterns

RFC952 states of a hostname: "The last character must not be a minus sign or period."
https://tools.ietf.org/html/rfc952

Some of the limitations in RFC952 were lifted by RFC1123, but not this one.
https://tools.ietf.org/html/rfc1123

The updated regex still allows single character hostnames, but does not allow the final character in any section to be a '-'.
This comment probably breaks the crap out of 'agent' but 'agent2' is the
future.

agent2 should now successfully use the new config parser w/ codec
support.

No 'conditionals' support yet, but I will add that soon.

Rough list of changes:
- try to unify agent2 errors
- make codecs loaded the same way other plugins are (removes extlib,
  woot)
- make default values subject to validation (necessary for codecs)
- some style cleanup
- move more error messages into locales/en.yml
- fix LogStash::Event#to_s to use %{+...}
- committing work-in-progress
  I've mostly figured out what to do here and how to do it in a sane
  way.

  Still working on getting the parser behaving correctly, but
  conditionals are almost fully supported now (with method calls, etc)
Fixed a bug in compiling..

Works as expected for now:
  output {
    if [latency] > 0.5 {
      pagerduty {
        description => "Oh snap!"
      }
    }
  }

Result:
  if ((event["[latency]"] > 0.5))
    plugin("output", "pagerduty", "description" => "Oh snap!")
  end
added set metric output
bumped statsd-ruby to version 1.2.0 to support set metrics
Added missing racob_fix hack which was removed in last commit.
Fixing eventlog timestamp format as it was not setting the offset properly.
Fixing type in wmi input.
Escaping + in regex
Add fabric and capistrano source types.
Merge pull request #516 from adamjt/update_source_type_names

Add fabric and capistrano source types to datadog output.
Updated the filter example code

Now includes filter_matched(event) & return unless filter?(event)
Merge pull request #517 from timconradinc/patch-3

Updated the filter example code