Add request timeout handling for Mellanox Neutron Agent

Add request timeout handling for messages sent to eswitch Daemon.
Using configurable number of retries and increasing waiting interval
between retries resend the message.
If request timeout persists, eswitch daemon is not reachable.
In such case, exit the agent process.

Closes-Bug: #1228827

Change-Id: If1290bedafe7a0dd8a61cbe328510075edeb1e5b
(cherry picked from commit 793c76344715790531d39436508b188b536e2ff5)
Merge "Add request timeout handling for Mellanox Neutron Agent" into stable/havana
Merge branch 'stable/havana' of https://github.com/openstack/quantum into havana/stable