OF-807: Allow hyphens in S2S server names

Replace standard XSS filter with something more specific to domain name
validation for the S2S server whitelist/blacklist form.
OF-807: S2S server name format

Per PR review feedback.
OF-807: Use IDN rules for S2S server names

Allow international domain names (per RFC 3490).
OF-807: Adjust encoding for UTF-8

Prior commit used a local default encoding (and broke the build).
OF-807: Fixup unit test for S2S validation

Initial tests included assertions for post-conditions that were not part
of the official API.
OF-670: Cleanup MUC for dropped S2S sessions

Detect "remote-server-not-found" error condition and remove
corresponding MUC users
OF-670: Detect all non-recoverable errors

Kick MUC user when a corresponding packet is returned with any permanent
error condition (PacketError.Type.cancel).
Merge pull request #89 from tevans/master

OF-807 + OF-670: Prep for 3.10.0