Switch to using Upstart and make it work on RedHat

This is an alternate approach to get RedHat support.  Instead of using init.d scripts, use Upstart and make the job smart enough to work on multiple platforms.

This approach is slighty better than #3 for the following reasons:
1.  Fewer changes from the original source, no OS specific files
2.  Preserves the 'wait for tunnel to start' behavior on all platforms
3.  Uses the same log file on all platforms
4.  Allows taking advantage of the 'respawn' capability of Upstart (my real motivation)