Fix memory leak in DestroyTransport.

Transport (and channels) depends on port_allocator, so we need delete
transport before deleting port_allocator.
The order of members in PeerState make default destructor to delete
port_allocator first, that may crash program in some situation.
Merge pull request #45 from kangjianbin/master

Fix memory leak in DestroyTransport.