OFConnectionManager: bundle APIs

This commit just adds stub functions that hook in to OFConnectionManager.
Later commits will fill them in.
OFConnectionManager: factor out ind_cxn_process_message

The bundle code will use this when committing a bundle.
OFConnectionManager: basic bundle implementation

This feature allows the controller to queue up messages to be processed by the
switch. This is useful for two reasons: first, the switch won't be left in an
intermediate state if the controller disconnects while pushing flows; and
second, the controller can send commit messages to every switch at close to the
same instant, minimizing the amount of time the network is in an inconsistent
state.

This doesn't yet implement the full semantics of OF 1.4 bundles. In particular,
a commit is not rolled back if executing a message fails.

Still left to do:
 - Commit in a long-running task
 - Limit maximum bundle size
 - Use a more efficient datastructure than biglist
 - Validate messages on add
OFConnectionManager: use a resizable array for bundle messages

BigList requires linear time to insert an entry, making adding a bunch of
messages to a bundle quadratic time.
OFConnectionManager: limit maximum bundle size
OFConnectionManager: sort messages before committing

The comparison function is optional and is intended to be supplied by
Forwarding.
OFConnectionManager: improve bundle comments and log messages
OFConnectionManager: convert bundle limits to config options
Merge into master from pull request #179:
OpenFlow 1.4 bundles (https://github.com/floodlight/indigo/pull/179)