ofp-util: Fix decoding multiple tables in ofputil_decode_table_features().
Table features replies can be packed back-to-back within a single
multipart reply. The code here didn't properly parse properties when this
occurred. This fixes the problem.
Better abstract table stats, using OpenFlow 1.3+ table features.
Until now, the OpenFlow "table stats" have not been well abstracted. They
have mostly used the raw ofp12_table_stats structure and translated to and
from that. That works OK for simple purposes, but it falls apart for
the "table features" introduced in OpenFlow 1.3, which are a superset of
the previous table stats but broken apart differently.
This commit refactors the internals to split "table stats" and "table
features" in the way done in OpenFlow 1.3 and use both of these structures
in the cases where previous versions of the protocol had just table stats.
The refactoring in this commit makes it much easier to implement the
OpenFlow 1.3 "table features request", which thus far Open vSwitch has
omitted.