CA-107425: Adding new acktools package to contain generic code across the kit and plugin.

Implementing route retrieval function for understanding whether any updates to the routing table need to be made.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Updating the Make/spec files to include and install the new acktools library on the host.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Updating the plugin to use the new acktools.net.route package for obtaining system routes.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Adding setup file for installing just the acktools.

This is a work around for the fact that we are currently not repackaging the python modules to use the distutils install mechanism. We do however want to be able to share some code between both the plugin and the kit. This allows us to install a library that can be used in such a way, and avoid duplication of effort.

There are a number of function calls in utils/autocertkit which we would like to move into this package over time.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Adding a RouteTable object to manage operations on a collection of routes.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Adding code to store the initial routes when running the network tests. This should allow us to recover any default routes that may inadvertently be lost.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Implement cleanup procedure to add back any missing default routes.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>
CA-107425: Update plugin to use gw and mask fields in setting up a route. Only extending implementation to consider the default route case where the 'default' key word must be used. We deduce this from a dest and mask of '0.0.0.0'.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>

If a default route is already in place, then we must make sure we remove it first.

Signed-off-by: Rob Dobson <rob@rdobson.co.uk>