OFStateManager: flowtable registration infrastructure

See the comments in indigo/of_state_manager.h. This change pulls some of the
table dispatch logic out of Forwarding and into OFStateManager. It does not yet
break the old Forwarding interface.

The plan is to do this for most "objects" in the switch (including groups,
ports, and queues).  This gives Indigo the ability to enumerate them,
simplifying the platform-dependent code and removing the need for clunky APIs
like `indigo_port_stats_get` that assume the reply fits in a single multipart
message.
OFStateManager: initialize indigo_fi_flow_stats_t

So that the forwarding module doesn't need to.
OFStateManager: add weak symbols for Forwarding flow operations

A Forwarding implementation that uses the new table registration infrastructure
exclusively will not need to implement these functions.
OFStateManager: add missing docs for ft_entry_t fields
OFStateManager: use correct reason for deleted flows
OFStateManager: assert table name fits in the OpenFlow field
OFStateManager: fix memory corruption in expiration
OFStateManager: fix misspellings
OFStateManager: replace some "should" with "must"
OFStateManager: add magic to table utest

Also split the stats, which are cleared between operations, from the rest of
the table which should not be.
Merge into master from pull request #85:
Flowtable registration (https://github.com/floodlight/indigo/pull/85)