Swift 2, extensiones de protocolo y respondeToSelector

No estoy seguro, me parece que es algún tipo de error o mala implementación con extensiones de protocolo en Swift 2.0.

Tengo el protocolo A, el protocolo B que extiende el protocolo A y la implementación de métodos en la extensión del protocolo B.

He conformado una instancia de clase para cumplir con el protocolo B, sin embargo, cuando es inspeccionado por respondsToSelector para los métodos del protocolo A / B, los resultados son falsos.

import Cocoa
import XCPlayground

protocol ProtocolA : NSObjectProtocol {
  func functionA()
}

protocol ProtocolB : ProtocolA {
  func functionB()
}

extension ProtocolB {
   func functionA() {
     print("Passed functionA")
   }

   func functionB() {
     print("Passed functionB")
   }
}

class TestClass : NSObject, ProtocolB {

    override init () {

    }
}

var instance:TestClass = TestClass()
instance.functionA() // Calls code OK..

if instance.respondsToSelector("functionA") {
    print("Responds to functionA") // **False, never passing here**
}

if instance.respondsToSelector("functionB") {
    print("Responds to functionB") // **False, never passing here**
}

¿Debería informarse como un error?

Respuestas a la pregunta(1)

Su respuesta a la pregunta