                 assert(false, "NO oauthtoken present in app. Log out!")
             }
         }
-        return nil
     }
 
     private func deleteRefreshTokensAndLogoutUser() {

        logout(success: { () -> Void in
            // get run for every time a sucessful scope logs out
            }) { (error) -> () in
                // just in case, delete token
        }
    }

    private func logout(#success: () -> Void, failure: (error: APIError) -> ()) {
        let rootResource = POSRootResource.existingRootResourceInManagedObjectContext(POSModelManager.sharedManager().managedObjectContext)
        let logoutURI = rootResource.logoutUri


    }

    private func validate(#oAuthToken: OAuthToken?, validationSuccess: (chosenToken: OAuthToken) -> Void, failure: ((error: NSError) -> Void)?) {
        if oAuthToken?.hasExpired() == false {
            validationSuccess(chosenToken: oAuthToken!)
            return 
        }

        if (oAuthToken?.refreshToken != nil && oAuthToken?.refreshToken != "") {
