 	public func mapArray(JSON: [[String : AnyObject]]) -> [N] {
 		mappingType = .fromJSON
 		
-		var objects: Array<N> = []
+		var objects = [N]()
 		
 		for innerJSON in JSON {
 			self.JSONDictionary = innerJSON

    }
    
    // map a JSON string onto an existing object
    public func map(string JSON: String, var toObject object: N) -> N! {
        var json = parseJSONDictionary(JSON)
        if let json = json {
            mappingType = .fromJSON
            self.JSONDictionary = json
            object.map(self)
            
            return object
        }
        return nil
    }
    
    // map a JSON string to an object Type that conforms to Mappable
    public func map(string JSONString: String) -> N! {
        var json = parseJSONDictionary(JSONString)
        if let json = json {
            return map(json)
        }
        return nil
    }
    
    // maps a JSON dictionary to an object that conforms to Mappable
    public func map(JSON: [String : AnyObject]) -> N! {
        var object = N()
        return map(JSON, toObject: object)
    }
    


	// maps a JSON array to an object that conforms to Mappable
	public func mapArray(string JSONString: String) -> [N]! {
		let JSONArray = parseJSONArray(JSONString)
		if let JSONArray = JSONArray {
			return mapArray(JSONArray)
		} else {
			// failed to parse JSON into array form
			// try to parse it into a dictionary and then wrap it in an array
			let JSONDict = parseJSONDictionary(JSONString)
			if let JSONDict = JSONDict {
				return mapArray([JSONDict])
			}
		}

		return nil
	}
	
