title: Initializer does not override a designated initializer while subclassing NSURLSession Swift
body: <p>I want to subclass NSURLSession class, but I have problem with initialisation.
  Basically I override the constructor and initialising the constant <code>authUrl</code> there then calling the parent init method. </p>
  
  <pre><code>class NSURLAuthSession: NSURLSession {
      let authUrl:NSURL;
  
      //Error: Initializer does not override a designated initializer from its superclass
      override init(configuration: NSURLSessionConfiguration, delegate: NSURLSessionDelegate?, delegateQueue queue: NSOperationQueue?){
          self.authUrl = NSURL.URLWithBaseURLString("http://192.168.10.105:8888/api/v1", pathSegments: ["users", "login"])!
          super.init(configuration: configuration, delegate: delegate, delegateQueue: queue)
      }
  }
  </code></pre>
  
  <p>From the source code of NSURLSession I found out that it has two initializers:</p>
  
  <pre><code>public /*not inherited*/ init(configuration: NSURLSessionConfiguration)
  public /*not inherited*/ init(configuration: NSURLSessionConfiguration, delegate: NSURLSessionDelegate?, delegateQueue queue: NSOperationQueue?)
  </code></pre>
  
  <p>I expected the "longest" init to be the designated initializer but it's not.
  I suspect that that designated initializer is the <code>init()</code> that is not even specified in the source code. 
  How can I override the initializer and set up the configuration <code>NSURLSessionConfiguration</code>?</p>