Finally fixed "Can't set headers after they are sent" error

When the request times out, it will return {timeout: true} and
abort the request. When the request is aborted, it will trigger
the 'error' event which will try to return *another* response.
Since the first response is already returned, this second response
causes an uncaughtException that headers are already sent.
Upgrade dependencies
Set winston papertrail version to ~0.1.4
Catch the exception that might be thrown by JSON.parse due to stupid values
Modify res.send/set to do nothing when header is already sent

Also fixed the typo
Remove nodefly
Remove nodefly code
res of app is not chainable. 

TypeError: Cannot call method 'send' of undefined
    at /app/server.js:142:31
Merge pull request #7 from premii/patch-1

res of app is not chainable.
Add semicolon
Add experimental Universal Analytics tracking
Add UA tracking ID in config example
Shorten logging messages
Make logging useragent strings optional
Expose two additional configs in config example
Only pass user agent when it's defined
Point to official universal-analytics module, and bump to approx
equivalent to the module versions
Also log the response times in UA
Remove console.log
Pass 'X-Forwarded-For' header to HN