Add trunks, simple containers to track inter-switch connections

To help with visualisation, add trunks - containers to describe
inter-switch connections in the database.

This entails:

 * a new table in the database called 'trunk' that contains nothing
   but creation time and the trunk_id field.
 * new trunk_id field in the port table, so that ports can either
   belong to one trunk or to trunk # -1 (aka none)

Creating a trunk then entails:

 * Creating a new entry in the trunk table
 * Moving both ports to be attached to that trunk_id

Also added helper functions and admin functions to match.

Also plumbed through --lookup_ports_by_switch,
--lookup_ports_by_current_vlan, --lookup_ports_by_base_vlan.

Change-Id: I97f7aa9a14eecbfab9a57f5e776ad21c5944b369
5 files changed