lang: Fix TCP bugs

This fixes Issue #1099. The problem was to do with the way in which incoming TCP messages were constructed before passing to the lang:

- The remote port info was not being set at all, and was then being converted from network to host order in ConvertReplyAddress. This was not needed as boost::asio::ip always gives ports in host order. UDP only worked because port was converted to network order and then back in ConvertReplyAddress, so that was removed as well.

- The received on port was being set to the remote port, so that was also corrected.

@timblechmann could you please take a look at this, and made sure I've done this correctly?