move perf logic from config file

moving information about providers to perf.js
to clean up local.js used for functional testing
update listener api to return provided resources

in local.js there is a provides key that specifies what
the listener provides.  we can read this to know what
methods to call during init or client creation for functional tests.
additionaly the api endpoints needed better naming like 'ios' instead of
liteserv which can be confused with android-literve
read providers from  config/perf.js or POST

list of providers for perf testing can be specified via config/perf.js.
or if running over rest, provided via POST command
better kill of pouchdb clients

using process.kill to stop pouchdb clients.
closing the listener wasn't enough to stop the client
fix: missing comma in setup.js was making global vars
stop polling gateway if running=false
remvoe references to local.js resources from test.js

update to use providers from config/perf.js.  alternatively
if started over http the providers specified from the POST
command will be used
moving docgen require into workload method

for some reason requiring common.js globally
causes all kinds of problems requring workload.js
in other modules.  i'm not familiar enough with
node to understand this - but seems doing a lazy
require here resolves things for now
top-level run.js for perf testing

Now perf test can be started via command line:
node perf/run.js
this will read whatever is specified in config/perf.js and start the test

If using local gateway, logs can be redirected like so:
node perf/run.js 2> gateway.log

If you do not want stat collection leave perfdb as null.

NOTE: this change also removing reference to perf testing from npm test which is
used for functional verification