XD-231: Twitter "gardenhose" support.

Initial commit - ported from kodiak with some minor alterations.
XD-231: Don't retry gardenhose on a 401

If authentication fails, the source fails to start rather than
trying repeatedly.
XD-231: Add back-off support for errors.

Back-off for rate limiting and other errors as required by the
twitter API docs.
XD-231: Add read timeout property to gardenhose.

Prevents the stream hanging in some cases. Default timeout is set
to 90s as recommended by twitter.

See https://dev.twitter.com/docs/streaming-apis/connecting#Stalls
Merge branch 'gardenhose'
XD-268: Some cleanup in options management

Fix local banner display

Actual XD-262: Converted existing code to Spring MVC. Needs Content-Type: text/plain to work as before though, will update doc accordingly if merged

Removing unused argument.

Added copyright headers to new files
Simple test infrastructure, testing http codes atm
Fixing merge conflict that went unnoticed
Fix build file formatting
Undo commit of log4j config
XD-144: Leave log4j.properties out of jar files

Added exclude to gradle jar task.