This patch adds get methods to the driver-lib which allows provider
drivers to query for objects by ID.
In support of the get methods, this patch fixes a bug in the data
model to_dict() where it may not properly recurse the objects.
It also improves connecting to the driver agent sockets and adds a
timeout while waiting to receive data from the driver-agent.
This patch is the inital move of the provider driver modules from
Octavia to octavia-lib.
This patch also moves the required constants and makes them available
to the provider drivers.