Validate_Hostname: Punycode decoding fails if encoded string has not hyphen

This is a backported pull request. ZF2's PR is: https://github.com/zendframework/zf2/pull/4636

> When validating host name like "xn--eckwd4c7cu47r2wf.jp", punycode decoder fails.
> 
> In typically case of Japanese(Maybe also Chinese and Korean) domain name, it hasn't ASCII characters. Then, encoded string has not hyphen after "xn--". In this case, current code reports decode error.