   
   
   
-   func _addChild(node:SKNode!) {
+  func _addChild(node:SKNode!) {
     if node.parent != self {
       node.removeFromParent()
       self._addChild(node)
       self._addedChild(node);
-
-    }
-    
-  }
-  
-   func _insertChild(node: SKNode!, atIndex index: Int) {
+      
+    }
+    
+  }
+  
+  func _insertChild(node: SKNode!, atIndex index: Int) {
     if node.parent != self {
       node.removeFromParent()
       self._insertChild(node, atIndex: index)


let hubUpdated     = NotificationHub<CFTimeInterval>()
let hubEmpty       = NotificationHub<SKNode>()
let hubContact     = NotificationHub<SKPhysicsContact>()
let hubNodeContact = NotificationHub<(SKNode, contact:SKPhysicsContact)>()


@objc public class Component : ComponentBehaviour  {
  var observersOne = [Notification<CFTimeInterval>]()
  var observersTwo = [Notification<SKNode>]()
  var observersThree = [Notification<SKPhysicsContact>]()
  var observersFour = [Notification<(SKNode, contact:SKPhysicsContact)>]()
  
  private var behaviour:ComponentBehaviour { return self as ComponentBehaviour }
  var isEnabled:Bool = true

    hubEmpty.publishNotificationName("SKC_didSimulatePhysics", sender: self)
  }
  
  
  
  public func didFinishUpdate() {
    hubEmpty.publishNotificationName("SKC_didFinishUpdate", sender: self)
  }
  
  
  public func didBeginContact(contact: SKPhysicsContact) {
    hubContact.publishNotificationName("SKC_didBeginContact", sender: self, userInfo:contact)
