     }
     
     /// - Precondition: `AppNetworkState.currentAppState` must not be nil
-    public func authDevice(pairingCode: String, completion: Network.ResponseCompletion) throws {
+    public func authenticate(pairingCode: String, completion: Network.ResponseCompletion) throws {
         guard let deviceUUID = UIDevice.currentDevice().identifierForVendor else { fatalError("Device must have an identifier to log in") }
         guard let appNetworkState = AppNetworkState.currentAppState else { fatalError("Must configure current app state to log in") }
         guard let url = NSURL(string: appNetworkState.tokenEndpointURLString) else { throw Network.Error.MalformedEndpoint(endpoint: appNetworkState.tokenEndpointURLString) }

    }
    
    /// - Precondition: `AppNetworkState.currentAppState` must not be nil
    public func registerUser(tokenJSON: JSONObject) throws {
        guard let appNetworkState = AppNetworkState.currentAppState else { fatalError("Must configure current app state to log in") }
        try appNetworkState.saveToken(tokenJSON)
    }

import JaSON

public protocol AuthRequests {
    func authenticate(username: String, password: String, completion: Network.ResponseCompletion) throws
    func authenticate(pairingCode: String, completion: Network.ResponseCompletion) throws
    func authenticate(tokenJSON: JSONObject) throws
    func logOut()
}

