Refactor Network API

Base network API class to have all the methods that can be implemented
by specific network api's.

 * Move common logic and decorators to network/base_api.py
 * Base class base_api.NetworkAPI with current methods from
   nova & neutron, that will raise NotImplementedError()
 * Refactor some tests with mock

When this get merged, every review adding new methods to neutron or
nova network, must have the same methods added to the base NetworkAPI.

Implements: bp refactor-network-api

Change-Id: Ia507e80dfd1e0b7552c5d50e84ac9e642ca8c9fe
Merge "Refactor Network API"