     
     // MARK: Login
     
-    internal func login(username: String, password: String, completionHandler: CompletionBlockWithString) {
+    func login(username: String, password: String, completionHandler: CompletionBlockWithString) {
         
         let oauthURL = stormpath.configuration.APIURL.URLByAppendingPathComponent(stormpath.configuration.oauthEndpoint)
         let requestManager = OAuthAPIRequestManager(withURL: oauthURL, username: username, password: password, callback: completionHandler)

    
    // MARK: Access token refresh
    
    internal func refreshAccessToken(completionHandler: CompletionBlockWithString) {
        let oauthURL = stormpath.configuration.APIURL.URLByAppendingPathComponent(stormpath.configuration.oauthEndpoint)
        
        guard let refreshToken = KeychainService.refreshToken else {


import UIKit

final class APIService: NSObject {
    weak var stormpath: Stormpath!
    
    init(withStormpath stormpath: Stormpath) {
