         }
     }
     
-    
-    func resourceCall<T:ArrowParsable>(verb:HTTPVerb = .GET, url:String, params:[String:AnyObject] = [String:AnyObject]()) -> Promise<T> {
-        let c = call()
-        c.httpVerb = verb
-        c.URL = url
-        c.params = params
-        c.returnsJSON = verb != .DELETE
-        
-        
-        // Apply corresponding JSON mapper
-        return c.fetch().then { json -> T in
-            let mapper = ModelJSONParser<T>()
-            let model = mapper.toModel(json)
-            return model
-        }
-    }
-    
-    func resourcesCall<T:ArrowParsable>(verb:HTTPVerb = .GET, url:String, params:[String:AnyObject] = [String:AnyObject]()) -> Promise<[T]> {
+    public func resourcesCall<T:ArrowParsable>(verb:HTTPVerb = .GET, url:String, params:[String:AnyObject] = [String:AnyObject]()) -> Promise<[T]> {
         let c = call()
         c.httpVerb = verb
         c.URL = url

import Alamofire
import Arrow

class WS {
    
    init(_ aBaseURL:String) {
        baseURL = aBaseURL
    }
    
    var baseURL = ""
    var OAuthToken: String?
    
    //MARK: - Call building helpers
    
    func call() -> WSCall {
        let r = WSCall()
        r.baseURL = baseURL
        if let token = OAuthToken {

    }
    
    private let collectionFromData = { (data: AnyObject) -> [AnyObject]? in
        if let a = data as? [AnyObject] {
            return a
        } else {
