gre_tunnel: exception due to race condition

This depends on thread scheduling.
When event handler is invoked, there may not corresponding network_id in
network module.
So add ports attribute to EventNetworkDelete event so that the event
handler can know the necessary information without listing ports of the
given network id.

> 127.0.0.1 - - [19/Jun/2013 11:24:25] "DELETE
> /v1.0/networks/8179bb70-a63f-4c74-a82e-a21f3c275c9a HTTP/1.1" 200 115 0.000488
> hub: uncaught exception: Traceback (most recent call last):
>   File "/opt/stack/ryu/ryu/lib/hub.py", line 50, in _launch
>     func(*args, **kwargs)
>   File "/opt/stack/ryu/ryu/base/app_manager.py", line 104, in _event_loop
>     handler(ev)
>   File "/opt/stack/ryu/ryu/app/gre_tunnel.py", line 210, in network_del_handler
>     for (dpid, port_no) in self.nw.list_ports(network_id):
>   File "/opt/stack/ryu/ryu/controller/network.py", line 319, in list_ports
>     return self.networks.list_ports(network_id)
>   File "/opt/stack/ryu/ryu/controller/network.py", line 97, in list_ports
>     raise NetworkNotFound(network_id=network_id)
> NetworkNotFound: no such network id 8179bb70-a63f-4c74-a82e-a21f3c275c9a

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
gre_tunnel.py: race condition

When tunnel key add/del event fires, the corresponding network_id
does not necessarily exists due to race condition.
So mask it.

(15612) accepted ('127.0.0.1', 45714)
127.0.0.1 - - [25/Jun/2013 12:18:18] "DELETE
/v1.0/networks/462be334-3160-48ae-9ef8-a456dc866f8f HTTP/1.1" 200 115
0.000393
(15612) accepted ('127.0.0.1', 45715)
127.0.0.1 - - [25/Jun/2013 12:18:18] "DELETE
/v1.0/tunnels/networks/462be334-3160-48ae-9ef8-a456dc866f8f/key
HTTP/1.1" 200 115 0.000260
hub: uncaught exception: Traceback (most recent call last):
  File "/opt/stack/ryu/ryu/lib/hub.py", line 50, in _launch
    func(*args, **kwargs)
  File "/opt/stack/ryu/ryu/base/app_manager.py", line 104, in _event_loop
    handler(ev)
  File "/opt/stack/ryu/ryu/app/gre_tunnel.py", line 233, in
tunnel_key_del_handler
    for (dpid, port_no) in self.nw.list_ports(network_id):
  File "/opt/stack/ryu/ryu/controller/network.py", line 325, in list_ports
    return self.networks.list_ports(network_id)
  File "/opt/stack/ryu/ryu/controller/network.py", line 103, in list_ports
    raise NetworkNotFound(network_id=network_id)
NetworkNotFound: no such network id 462be334-3160-48ae-9ef8-a456dc866f8f

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
simple_vlan.py: race condition

When tunnel key is registers, network is is not always
registered.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>