     }
     
     /// EZSE: Checks if self contains a list of items.
-    func contains(items: Element...) -> Bool {
+    public func contains(items: Element...) -> Bool {
         return items.testAll { self.indexOf($0) >= 0 }
     }
     
     /// EZSE: Difference of self and the input arrays.
-    func difference(values: [Element]...) -> [Element] {
+    public func difference(values: [Element]...) -> [Element] {
         var result = [Element]()
         elements: for element in self {
             for value in values {

    
    /// EZSE: Creates an array with values generated by running each value of self
    /// through the mapFunction and discarding nil return values.
    func mapFilter<V>(mapFunction map: (Element) -> (V)?) -> [V] {
        var mapped = [V]()
        each { (value: Element) -> Void in
            if let mappedValue = map(value) {

    }
    
    /// EZSE: Prepends an object to the array.
    public mutating func insertAsFirst(newElement: Element) {
        insert(newElement, atIndex: 0)
    }
}
