pluggable "behavior delegate", currently just for DiscoveryFilter

for modifying nsq consumer behavior at some defined points
panic()s if the behavior delegate casts to no known interfaces

currently just supports DiscoveryFilter (with a Filter() method),
to filter the nsqd addresses resulting from discovery (via nsqlookupd)
Merge pull request #86 from ploxiln/pluggable_lookup_provider_86

make lookup functionality pluggable
config: allow heartbeat_interval and output_buffer_timeout to be disabled
Merge pull request #87 from mreiferson/fix_disable_identify_87

Config doesn't accept -1 for output_buffer_timeout