NCBC-644: ops/sec is not restored to the expected value - part 2

This rewrite's the ViewClient implementation to use HttpWebRequest as
opposed to HttpClient, because HttpClient does not handle the number of
requests pushed through during a test. It's Task based and eventually
queued up Task's began timing out causing the client to become unstable.
Currently the ExecuteAsync method is still using HttpClient, but that will
change in a later commit to use the older Begin/End async methods. In
addition to the switch to HttpClientRequest, this commit also contains
several performance tweaks and 'knobs' for controlling them from an
application. `

Change-Id: I96f8884484d3d58be57d0dc2ab4b3ff356ee6d2a
Reviewed-on: http://review.couchbase.org/42069
Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
Reviewed-by: Brett Lawson <brett19@gmail.com>