     }
 }
 
-//MARK: Dictionary methods
+//MARK: Dictionary-like methods
 
 extension Map {
 

        return result
    }

    @warn_unused_result
    public func reduce<T>(initial: T, @noescape combine: (T, Element) throws -> T) rethrows -> T {
        var result = initial

        return result
    }

    /// Return an `Array` containing the concatenated results of mapping `transform` over `self`.
    @warn_unused_result
    public func flatMap<S: SequenceType>(transform: (Element) throws -> S) rethrows -> [S.Generator.Element] {
        var result: [S.Generator.Element] = []
        try self.forEach { element in
            result.appendContentsOf(try transform(element))
