Fixing S3 input and output

- Input: Fixing inclusion of library ( LOGSTASH-1321 )
- Input: adding better validation for region
- Output: Fixing region validation ( LOGSTASH-1319 )
- don't store geoip data that is nil or empty strings
- update change for geoip fix
Merge pull request #636 from electrical/fix_s3

Fixing S3 input and output
- fix log4j input variable name bug (#635, etc)
- some style fixes
- time must be in UTC (LOGSTASH-1295)
- Pipeline now calls teardown on all input plugins when shutdown is
  requested
- Make udp input plugin abort when shutdown signal is given.
  (LOGSTASH-1290)