Initial commit of port aggregation work
   - Created new controller class PortBond
   - Any bonded ports must be registered via RESTful API
   - Port bonding logic implemented into PXE and BaseCase packet handlers of tr-edge-isolation
Changed input requirements for creating a new port bond
   - Supply dpid (optional network_id), bond_id returned
Install flows to drop loopback packets from downstream switches on bonded ports
Minor fixes to tr-edge-isolation application due to port aggr changes
Checking if port already registered to EXTERNAL network moved out of network ctrl, up to rest app
Fixed incorrect HTTP response code when an error occurs
Removed requirement to pass dpid when registering port to a bond
Fixed port creation bug which passed port as a string rather than int
Moved DB table creation into Ryu (previously in DevStack script)
Added DB support for port bonding APIs
Added stricter error checking in port bonding related code
Updated API DB to use sqlalchemy migrate; enables DB changes without losing data
Added new connection check code for DB (Incase of timeout due to 8 hours of inactivity)
Updates to FlowVisor support code
   - Clean up of code and fixed some potential bugs
   - Improved robustness of code incase of error while deleting FlowSpaces
Updated API DB to support FlowVisor APIs
   - Change necessitated new DB table to store mac2net information
   - Support of mac2net introduces race condition between DB updates and queries, may cause occasional non-fatal exceptions
Merge branch 'port_aggr' into silver

Conflicts:
	ryu/app/tr-edge-isolation.py