Set protocol capabilities at HELLO

For example MULTIPART_REQUEST GROUP sent just after HELLO failes
if capabilities was not set. So it should be done at HELLO instead
of FEATURE_REQUEST.
Create multiple parts multipart message if payload is big enough.

For example, if you have 2000+ groups, then OFMP_GROUP to
OFPG_ALL returns a big reply, and the message length
overflows uint16_t, where we really need multiple messages.

Signed-off-by: Hiroaki KAWAI <kawai@stratosphere.co.jp>
fix memory leak in calloc_packet_info

memory leak would happen when multiple parse_packet
was called on the same buffer.
rework push action for memory reallocation

just fixed the FIXME section.
fix packet_in handling caused by packet_out

OFPT_PACKET_OUT with OFPAT_ACTION_OUTPUT to OFPP_CONTROLLER
requres controller handle OFPT_PACKET_IN within the same
protocol thread.
Check OFPPC_NO_PACKET_IN only when table_miss happened
Add processing OFPP_TABLE in action_output

OFPP_TABLE forward the packet into table match.
rework push action for memory reallocation

just fixed the FIXME section.
Merge branch 'action_push' of https://github.com/iHiroakiKawai/trema-edge into action_push
fix memory leak in calloc_packet_info

memory leak would happen when multiple parse_packet
was called on the same buffer.
Merge branch 'packet_info_memleak' of https://github.com/iHiroakiKawai/trema-edge into packet_info_memleak
set packet_info->l2_vlan_header

packet_info->l2_vlan_header is referenced by set_vlan_vid(),
set_vlan_pcp() and execute_action_pop_vlan() but it is not set in
parse_ether()
refetch the packet_info address

push_vlan_tag might change the packet_info address, so
we must refetch the address.
fix typo
allow arp packet in 802.1Q vlan
add missing delete_list() after using list_element.

For memory leaks.
add constant value
- ofp_port_config
- ofp_port_features
- ofp_packet_in_reason
- ofp_flow_removed_reason
add vlan ethertype and fix pbb ethertype

For vlan header 0x8100 and 0x88a8 should be supported and
0x88e7 should be used for pbb by openflow specification.
0x9100, 0x9200 and 0x9300 is commonly used for vlan tpid.
fix ipv4_* of packet_info
Fix an issue on creating DecIpTtl