Implement requests from issues #6 and #8.

Modifies the Consumers to no longer connect directly to a single NSQD
node through QueueAddr. API changes have occurred in which Worker now
looks for two config settings called QueueAddresses and LookupAddresses.
Both are lists of address strings for NSQD and NSQLookupd respectively.
This allows a worker to communicate with multiple NSQD and NSQLookupd
nodes.
Connect to NSQLookupds before NSQDs. For issue #9.
Added Redis key lock for deduplication.
Moved Job Timeout to a constant.

Still 900 seconds (15 minutes) right now.
Merge branch 'lookupd' into tempdev

Conflicts:
	config.toml.sample
Merge branch 'dedup' into tempdev
Added bench.sh to examples.
Merge pull request #12 from pressly/dev

Dev