             
             guard let offset = req.headers["X-Offset"].flatMap({ Int($0)})
                 else {
-                    callback(self.jsonError(req, res: res, message: "Need X-Offset as completion offset for completion"))
-                    return
+                    self.jsonError(req, res: res, message: "Need X-Offset as completion offset for completion")
+                    return .Send
             }
             
             guard let path = req.headers["X-Path"]
                 else {
-                    callback(self.jsonError(req, res: res, message: "Need X-Path as path to the temporary buffer"))
-                    return
+                    self.jsonError(req, res: res, message: "Need X-Path as path to the temporary buffer")
+                    return .Send
             }
             
             guard let file = req.headers["X-File"]
                 else {
-                    callback(self.jsonError(req, res: res, message: "Need X-File as name of the file in the project"))
-                    return
+                    self.jsonError(req, res: res, message: "Need X-File as name of the file in the project")
+                    return .Send
             }
             
             let result = self.completer.complete(path, fileInProject: file, offset: offset)
             switch result {
             case .Success(result: _):
                 res.bodyString = result.asJSONString()
-                callback(.Send(req, res))
+                return .Send
             case .Failure(message: let msg):
                 self.jsonError(req, res: res, message: msg)
+                return .Send
             }
         }
         

    /**
    Awful way of returning an error
    */
    private func jsonError(req: Taylor.Request, res: Taylor.Response, message: String) -> Taylor.Callback {
        res.bodyString = "{\"error\": \"\(message)\"}"
        return Callback.Send(req, res)
    }
    
    /**

        self.completer = completer
        
        self.server = Taylor.Server()
        self.server.get("/stop") { (req, res) -> Callback in
          self.stop()
          return .Send
        }
        
        self.server.get("/complete") { req, res in
            
            res.headers["Content-Type"] = "text/json"
            
