         super.init(applicationGroupIdentifier: applicationGroupIdentifier)
 
         PeerKit.transceive(sanitizedIdentifier)
+        passMessage(pingPayload, identifier: pingIdentifier)
     }
 
     public override func listenForMessage(#identifier: String, _ listener: ((AnyObject!) -> Void)) {

        super.init(applicationGroupIdentifier: applicationGroupIdentifier)

        PeerKit.transceive(sanitizedIdentifier)

        wormhole = MMWormhole(applicationGroupIdentifier: applicationGroupIdentifier, optionalDirectory: "stargate")
    }

    public func debug(callback: DebugHandler) {


    public func passMessage(message: NSCoding, identifier: String) {
        fatalError("passMessageObject() needs to be overidden in subclasses.")
    }

    public func sendMultipeerMessage(message: AnyObject, identifier: String) {
        let allPeers = PeerKit.session?.connectedPeers as? [MCPeerID]
        PeerKit.sendEvent(identifier, object: message, toPeers: allPeers)
    }

    public func stopListeningForMessage(#identifier: String) {
