Discourse setup script hostname validation for Let's Encrypt

So I made some changes in a branch. Here is how it is going to work:

Using a wrong hostname:

root@droplet:/var/discourse# ./discourse-setup

Hostname for your Discourse?: bad-domain.com

Checking your domain name . . .
WARNING:: This server does not appear to be accessible at bad-domain.com:443.

A connection to http://bad-domain.com (port 80) also fails.

This suggests that bad-domain.com resolves to the wrong IP address
or that traffic is not being routed to your server.

Google: "open ports YOUR CLOUD SERVICE" for information for resolving this problem.

If you want to proceed anyway, you will need to run cp samples/standalone.yml containers/app.yml
and edit the containers/app.yml file manually.

Using a correct hostname:

root@droplet:/var/discourse# ./discourse-setup

Hostname for your Discourse?: good-domain.com

Checking your domain name . . .
Connection to good-domain.com succeeded.
Email address for admin account(s)? : 

Changes are pending at

Does it looks good @pfaffman @codinghorror ?