Validate vhosts names more strictly

There was a bug in the setup page where valid domains that start with a number would be captured by the validation check designed to detect IP addresses. This check detects IPs by comparing the host name to a regex, instead of simply detecting whether the first character is a number.