Fixed bug where headers where being reused between requests

The reuse of headers was especially problematic for the Content-Length header which is only recalculated when it wasn't already set.
Added missing comma to prevent apiConfig from becoming unintentionally global.
Allow config.json location to be configured by argument to app.js
If Redis configuration is not defined in the config.json then just run
without it. Even without Redis, it can run just fine for simple APIs.
Don't send 'Content-Length' header on GET request.
added support for text parameter type
Bind on specific address or UNIX socket.
Add style for HTTP PATCH method.
Merge pull request #155 from kevinpeterson/master

Only add "Content-Length" header on POST/PUT calls.
Merge pull request #166 from AlekSi/add-patch-method

Add style for HTTP PATCH method.
Merge pull request #163 from fullergalway/master

added support for text parameter type
Merge pull request #148 from haebin/noredis-support

If Redis configuration is not defined in the config.json then just run without it.
Merge pull request #146 from rowanhill/configurable-config-json

Allow config.json location to be configured by argument to app.js
allow for password fields
Merge pull request #170 from jedwood/password-fields

allow for password fields
@gabrielf PR #59 merged - bug fix for issue #58
Merge branch 'master' of https://github.com/mashery/iodocs
Merge pull request #59 from gabrielf/issue-58

Issue #58 fixed. Using clone on options.headers.
Merge pull request #165 from AlekSi/address-fix

Bind on specific address or UNIX socket.
changed from optimist to yargs, fixed password issue, added more generic ENV var