datapaths: Add fragment-handling options

We now try to handle fragments as the spec describes, though we don't
presently support reassembly.

This also adds a config_flags instance variable for holding switch flags.

Thanks to eternia478 for additional suggestions on this patch.
datapaths: Implement queue config request handling

Of course, since queues are not implemented, all of the configuration
information about queues is non-existent.
datapaths: Implement emergency entry handling

Emergency entries must not have a timeout, so before anything else,
the entry must be checked and rejected if it does not adhere to this
condition. Also, the current switch does not have its own separate
emergency table, so such entries are not supported.

For future possible implementations of emergency entry handling, upon
deletion, an emergency entry should not generate a flow removal message
to the controller.
datapaths: Rename packet_length to message_length

Since the variable packet_length actually did not signify the length of
an actual packet but of an openflow message, its name was changed to
message_length instead.
datapaths: Clean/extend connection error handling

OFConnection's error handling didn't send error messages for bad
message type or bad message length.  Added.

Also refactored the error handling to be cleaner / more regular.
packet.icmpv6: Fix typo in NDNeighbor pack methods

The pack methods for NDNeighborSolicitation and NDNeighborAdvertisement
had a typo which led to an exception.  Fixed.
datapaths: Improve handling of emergency flows

We still don't implement emergency flows, but we do log more about
them.  We also reject emergency flows with the SEND_FLOW_REM flag
using a weird error code, since such flows are not legal in the
first place.

Thanks to eternia478 for input on this patch.
datapaths: Implement switch configuration handling

Implemented handling for both set and get requests on the switch's
configuration parameters miss_send_len and config_flag.