addon/client: Move connection step to a separate member method

This fixes memory leaks or crash-to-desktop (the latter reliably
triggered by Boost 1.54) situations resulting from failed connections to
an add-ons server throwing an exception from the addons_client
constructor, not giving the destructor a chance to run.

Thanks to loonycyborg for helping me diagnose the issue.