      Searches for Entities that fall into any of the specified facets.
      - Parameter types: An Array of Entity types.
      - Parameter groups: An Array of groups.
-     - Parameter properties: An Array of property typles.
+     - Parameter properties: An Array of property tuples.
      - Returns: An Array of Entities.
      */
     public func searchForEntity(types types: [String]? = nil, groups: [String]? = nil, properties: [(key: String, value: AnyObject?)]? = nil) -> [Entity] {

        } as [Action]
    }
    
    internal func search(typeDescriptionName: String, types: [String]) -> [AnyObject]? {
        var typesPredicate = [NSPredicate]()
        

        return try? managedObjectContext.parentContext!.parentContext!.executeFetchRequest(request)
    }
    
    /**
     Searches based on property value.
     - Parameter propertyDescriptionName: An entity type description.
     - Parameter properties: An Array of property tuples.
     - Returns: An optional Array of AnyObjects.
     */
    internal func search(propertyDescriptionName: String, properties: [(key: String, value: AnyObject?)]) -> [AnyObject]? {
        var propertiesPredicate = [NSPredicate]()
        
