Only trim leading characters not matching spec for first character

Change to use `trimLeadingFrom` to keep allowed characters in the rest of the hostname. 
Doesn't this mean that we'll accept names ending with hyphens? I don't think they're allowed. [Wikipedia](http://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names) says:
> The original specification of hostnames in RFC 952, mandated that labels could not start with a digit or with a hyphen, and must not end with a hyphen. However, a subsequent specification (RFC 1123) permitted hostname labels to start with digits. No other symbols, punctuation characters, or white space are permitted.

RFC 952 says:
> The last character must not be a minus sign or period.

I don't think its restrictions on the last character were changed by RFC 1123.

Am I missing something?