         return urlc
     }
     
-    /// The URL from the request in string form
-    /// This contains just the path and query parameters starting with '/'
-    /// Use 'urlURL' for the full URL
+    /**
+     The URL from the request in string form
+     This contains just the path and query parameters starting with '/'
+     Use 'urlURL' for the full URL
+     
+     ### Usage Example: ###
+     ````swift
+     print(request.urlString)
+     ````
+     */
     @available(*, deprecated, message:
     "This contains just the path and query parameters starting with '/'. use 'urlURL' instead")
     public var urlString : String { return httpParser?.urlString ?? ""}
     
-    /// The URL from the request in UTF-8 form
-    /// This contains just the path and query parameters starting with '/'
-    /// Use 'urlURL' for the full URL
+    /**
+     The URL from the request in UTF-8 form
+     This contains just the path and query parameters starting with '/'
+     Use 'urlURL' for the full URL
+     
+     ### Usage Example: ###
+     ````swift
+     print(request.url)
+     ````
+     */
     public var url : Data {
         if let httpParser = httpParser {
             return  Data(bytes: httpParser.url.bytes, count: httpParser.url.length)

        return count
    }
    
    /// Read the whole body of the request.
    ///
    /// - Parameter into: An NSMutableData to hold the data in the request.
    /// - Throws: if an error occurs while reading the data.
    /// - Returns: the number of bytes read.
    @discardableResult
    public func readAllData(into data: inout Data) throws -> Int {
        var length = try read(into: &data)

    /// Client connection socket
    private let socket: Socket
    
    /**
     Server IP address pulled from socket.
     
     ### Usage Example: ###
     ````swift
     request.remoteAddress
     ````
     */
    public var remoteAddress: String {
        return socket.remoteHostname
    }
    
    /**
     HTTP Method of the request.
     
     ### Usage Example: ###
     ````swift
     request.method.lowercased()
     ````
     */
    public var method: String { return httpParser?.method ?? ""}
    
    /**
     Major version of HTTP of the request
     
     ### Usage Example: ###
     ````swift
     print(String(describing: request.httpVersionMajor))
     ````
     */
    public var httpVersionMajor: UInt16? { return httpParser?.httpVersionMajor ?? 0}
    
    /**
     Minor version of HTTP of the request
     
     ### Usage Example: ###
     ````swift
     print(String(describing: request.httpVersionMinor))
     ````
     */
    public var httpVersionMinor: UInt16? { return httpParser?.httpVersionMinor ?? 0}
    
    /**
     Set of HTTP headers of the request.
     
     ### Usage Example: ###
     ````swift
     let protocols = request.headers["Upgrade"]
     ````
     */
    public var headers: HeadersContainer { return httpParser?.headers ?? HeadersContainer() }
    
    /**
     socket signature of the request.
     
     ### Usage Example: ###
     ````swift
     public var signature: Socket.Signature? { return socket.signature }
     ````
     */
    public var signature: Socket.Signature? { return socket.signature }
    
    private var _url: URL?
    
    /**
     Create and validate the full URL.
     
     ### Usage Example: ###
     ````swift
     print(request.urlURL)
     ````
     */
    public var urlURL: URL {
        if let _url = _url {
            return _url
