Fixed issue with validating SSL certificates using wildcards in the CN

Found an issue when validating SSL certificates that is using wildcard (*) characters in the CN. The current implementation is giving RemoteCertificateNameMismatch error as the regular string comparison is not sufficient.

The suggested changes includes a method `Match()` for correctly matching hostname with the CN. This method is borrowed from the [mosa project](https://github.com/mosa/Mono-Class-Libraries/blob/28840dee90750d61ed6cbdb753292cd64cac169e/mcs/class/System/System.Net/ServicePointManager.cs), and I am not sure what the process is, for this kind of code sharing.