[Mac] Make the local_discovery client more resilient to invalid UTF-8.

Both service names and TXT records could contain invalid code unit sequences
that could later lead to crashes. This change also fixes several NSObject leaks.

BUG=586628

Review-Url: https://codereview.chromium.org/2132723003
Cr-Commit-Position: refs/heads/master@{#404781}
2 files changed