     
 }
 
+/// Basic Http Auth
 public struct BasicAuth {
     
-    let username: String
-    let password: String
+    fileprivate let username: String
+    fileprivate let password: String
     
     public init(username: String, password: String) {
         self.username = username


import Foundation

public protocol Auth {
    func apply(to request: inout URLRequest)
}

public struct NoAuth: Auth {
    
    static let standard = NoAuth()
    
    public func apply(to request: inout URLRequest) {


extension BasicAuth: Auth {
    
    /// Adds authorization header
    public func apply(to request: inout URLRequest) {
        let string = ("\(username):\(password)".base64Encoded).?
        let auth = "Basic \(string)"
