input/collectd: Correctly bitshift type values

  * Type values were not correctly bitshifted
  * Fix type_map and get_value defs
  * Fix some whitespace issues
input/collectd: Implement signature verification

  This code adds signature verification to the collectd input. It uses
  the same authentication file as collectd does and reloads the file if
  it has a newer mtime. When the signature on the packet doesn't match,
  the packet is not processed.
input/collectd: Implement packet decryption

  * Closes LOGSTASH-1640
  * Altered the main loop
    * Should be faster because we don't loop through every byte
    * Makes decrypting the packet easy
  * Added several constants so we don't initialize certain variables
    every time
  * Added rspec tests
input/collectd: Rename @event to @collectd

  @untergeek made a good point on @event being an internal logstash
  variable that could clash.
input/collectd: Various bugfixes

  * It didn't generate an event for the last event in the packet
  * Raise an exception if the authfile is not found
  * Removed some debug statements
  * Correct usage of 'insist' in rspec
input/collectd: Add old-style interval type

  * Only added to the typemap, as get_values already handles the field
input/collectd: Remove unused function

  * The vt_map function was called for every field in a VALUES part,
    but the result was never used in the program.
input/collectd: Simplify packet parse loop logic

  * Generate the event if the current part is and interval or values
    part
  * Log a warning if the type-number of the part is unknown
input/collectd: Add extra event clean up code
Merge pull request #905 from pieterlexis/collectd

Implement support for CollectD packet signing and encryption (LOGSTASH-1640)

Thanks for making Logstash more awesome! :+1: