[WIP] Implement support for networking-as-a-service (aka OpenStack Neutron)

This is a WIP PR. Feel free to review but do not merge it just yet. When it is ready for merge all "WIP" mentions will be removed from it.
Is there a reason to keep this in?