Adds tty password entry for neutronclient

Added functionality from keystoneclient to fallback to the tty for password
entry if no password is given via the environment or the --os-password option.

Closes-Bug: 1356550

Change-Id: I7d0428a8901cae667ef598aa515e108a3a679540
Work toward Python 3.4 support and testing

Change-Id: I5ba556b1abb65050cffed76e354c164754552232
Fix to ensure endpoint_type is used by make_client()

This will fix an issue where neutronclient is ignoring the endpoint_type
passed to the client for v2 auth.

* make_client for '2.0' will now pass on the endpoint_type variable

Change-Id: I917ebee51254bc3e144f09573fa628d4ca192d13
Closes-Bug: #1368676
Replace httpretty with requests_mock

The httpretty library has poor Py3 support, currently the only
working version is 0.8.0, all later minor versions are pinned.

Requests-mock library provides mocking layer for requests package. It is
written in such a way that it is fairly simple to convert existing
httpretty test suites to requests-mock. The library is hosted at Stackforge
and gated as usual OpenStack project.

Change-Id: If7f4baefb53976571efc47dda17a7b543112d555
Use six.moves cStringIO instead of cStringIO

to keep Python 3.x compatibility, use six.moves.cStringIO to
replace StringIO

Change-Id: Ib6dcd06ca8c9342d26f3b7b738c99d23433d7f30
Closes-Bug: #1280964
handles keyboard interrupt

When an user intentionally provides an keyboard interrupt, neutronclient
throws the entire traceback on to the terminal instead of handling it.
neutronclient will now handle the keyboard interrrupt and provides an crisp
message on to the terminal.

Change-Id: I55a85cd4bfcbf26d81e5678b6f4aed3d1c288467
Closes-Bug: #1367283
Change ipsecpolicies to 2 separate words: IPsec policies

In the help text for vpn-ipsecpolicy-list, change ipsecpolicies to
2 separate words, IPsec policies.

Change-Id: I5f49991945c8e638d35e7267b2de81eeaf7ea9bf
Closes-Bug: #1373622
Correct 4xx/5xx response management in SessionClient

Currently SessionClient raises an exception when status code >= 400
unlike HTTPClient. neutronclient.v2_0.client expects HTTPClient
behavior.

This change disables exception raise when status code >= 400 in
SessionClient (more precisely in keystoneclient.session).

Change-Id: Ic96cb9326842f0b6a180fd8f94293da9fa0f6b2f
Closes-Bug: #1376171
Change "healthmonitor" to "health monitor" in help info

Change "healthmonitor" to "health monitor" in help info for the
following commands:
   lb-healthmonitor-create
   lb-healthmonitor-delete
   lb-healthmonitor-list
   lb-healthmonitor-show
   lb-healthmonitor-update

Change-Id: Icbb219d9e4a2d88e00c5734acc30b1c7609d02fc
Closes-Bug: 1377516
Leverage neutronclient.openstack.common.importutils import_class

This patch allows us to drop our version of import_class in favor
of openstack.common.importutils version's.

Change-Id: Ia96f06e2dc7dfb9824377e3a7381da2732dd2c15
Closes-bug: 1365273
Add missing parameters to Client's docstring

Client's constructor receives keyword arguments (**kwargs), which are
then passed to an HTTPClient. Since HTTPClient receives numerous
parameters, Client's docstring describes which parameters are expected
and their meanings. This patch adds 2 parameters which HTTPClient
receives but weren't previously documented in Client's docstring.

Change-Id: I12e520f6e26c3aa7c76b190c3e2125d77c71a19a
Merge "Fix to ensure endpoint_type is used by make_client()"
Merge "Replace httpretty with requests_mock"
Merge "Change "healthmonitor" to "health monitor" in help info"
Merge "Work toward Python 3.4 support and testing"
Merge "Change ipsecpolicies to 2 separate words: IPsec policies"
Merge "Use six.moves cStringIO instead of cStringIO"
Merge "Correct 4xx/5xx response management in SessionClient"
Merge "handles keyboard interrupt"
Merge "Adds tty password entry for neutronclient"