title: Check if URL is valid in Swift 4
body: <p>How can you check to see if a URL is valid in Swift 4? I'm building a simple web browser for personal use and even though I know to enter the full URL each time I'd rather get an alert instead of the app crashing if I forget.</p>
  
  <pre><code>import UIKit
  import SafariServices
  
  class MainViewController: UIViewController {
      @IBOutlet weak var urlTextField: UITextField!
  
      @IBAction func startBrowser(_ sender: Any) {
          if let url = self.urlTextField.text {
              let sfViewController = SFSafariViewController(url: NSURL(string: url)! as URL)
              self.present(sfViewController, animated: true, completion: nil)
          }
          print ("Now browsing in SFSafariViewController")
      }
  }
  </code></pre>
  
  <p>For example, if I was to type in a web address without http:// or https:// the app would crash with the error <code>'NSInvalidArgumentException', reason: 'The specified URL has an unsupported scheme. Only HTTP and HTTPS URLs are supported.'</code></p>