title: Scanning for Peripherals offering specific services, But doesn't find Services on discovered peripheral
body: <p>I'm experimenting with the CoreBluetooth Framework for iOS and I'm facing an issue that I find very Strange.</p>
  
  <p>Once I have a Connected Peripheral, I want to discover it's services - but it fails. Despite searching for and finding Peripherals which offer a specific service. See the code below:</p>
  
  <pre><code>func centralManagerDidUpdateState(central: CBCentralManager) {
      if(central.state != .PoweredOn) {
          print("Returning due to wrong state: ", central.state)
          return;
      }
      print("Starting peripheral scan")
      manager.scanForPeripheralsWithServices(serviceUUID, options: nil)
  }
  </code></pre>
  
  <p>Peripheral Scanning is started and looking for specified serviceUUIDs. In this case: <code>serviceUUIDs = [CBUUID(string: "13333333-3333-3333-3333-333333333337")]</code>. If I change the String, No service is discovered at all (as expected).</p>
  
  <pre><code>func centralManager(central: CBCentralManager, didDiscoverPeripheral peripheral: CBPeripheral, advertisementData: [String : AnyObject], RSSI: NSNumber) {
      print("Discovered peripheral: ", peripheral.name)
      if(peripheral.name == "PizzaSquat") {
          print("Advertising data: ", advertisementData)
          print("RSSI: ", RSSI)
          activePeripheral = peripheral
          print("Connecting to peripheral")
          manager.connectPeripheral(peripheral, options: nil)
      }
  }
  </code></pre>
  
  <p>On a Linux computer, I have a <code>Bleno</code> instance running which is displaying as a Peripheral with the name "PizzaSquat" (And obviously offers a Service, since it's discovered at all. So when this Peripheral is discovered, I connect to it.</p>
  
  <pre><code>func centralManager(central: CBCentralManager, didConnectPeripheral peripheral: CBPeripheral) {
      print("Connected to Peripheral: ", peripheral.name)
      if(peripheral.services == nil) {
          print("Starting service discovery")
          peripheral.delegate = self
          peripheral.discoverServices(serviceUUIDs)
      } else {
          print("Already has services: ")
          for service: CBService in peripheral.services! {
              print(service)
          }
      }
  }
  </code></pre>
  
  <p>Once connected (to "PizzaSquat"), I check if it already has services (It doesn't) and start Service discovery. Everything is correct up to this point - But no Services are ever discovered. I expect the below function to be called:</p>
  
  <pre><code>func peripheral(peripheral: CBPeripheral, didDiscoverServices error: NSError?) {
      print("Discovered new Service")
      for service: CBService in peripheral.services! {
          print(service)
      }
  }
  </code></pre>
  
  <p>with at least one service, Since the Peripheral shouldn't be discovered at all if it didn't have the specified Service!</p>
  
  <p>I have also tried to call <code>peripheral.discoverServices(nil)</code> to discovery any Service, but still no response.</p>
  
  <p>Could someone help me find the problem?</p>