 
      - returns: A tuple of data task and a signal for the resulting array of Content Types
      */
-    public func fetchContentTypes(matching: [String : Any] = [:]) -> (URLSessionDataTask?, Observable<Result<Array<ContentType>>>) {
+    @discardableResult public func fetchContentTypes(matching: [String : Any] = [:]) -> (URLSessionDataTask?, Observable<Result<Array<ContentType>>>) {
         let closure: SignalObservation<[String : Any], Array<ContentType>> = fetchContentTypes(matching:completion:)
         return signalify(parameter: matching, closure: closure)
     }


     - returns: A tuple of data task and a signal for the resulting Asset
     */
    public func fetchAsset(identifier: String) -> (URLSessionDataTask?, Observable<Result<Asset>>) {
        let closure: SignalObservation<String, Asset> = fetchAsset(identifier:completion:)
        return signalify(parameter: identifier, closure: closure)
    }


     - returns: A tuple of data task and a signal for the resulting Content Type
     */
    @discardableResult public func fetchContentType(identifier: String) -> (URLSessionDataTask?, Observable<Result<ContentType>>) {
        let closure: SignalObservation<String, ContentType> = fetchContentType(identifier:completion:)
        return signalify(parameter: identifier, closure: closure)
    }
