Works great in 2017 too :)
Just need some changes like, adding
package require tls
package require http
if needed, and change on line 223 where
http::register https 443 tls::socket
to
if { [info exists {my-ip}] == 1 && [string length ${my-ip}] > 0} {
http::register https 443 [list tls::socket -myaddr ${my-ip} -tls1 1]
} elseif { [info exists {my-hostname}] == 1 && [string length ${my-hostname}] > 0} {
http::register https 443 [list tls::socket -myaddr ${my-hostname} -tls1 1]
} else {
http::register https 443 [list tls::socket -tls1 1]
}