         self.path = ""
     }
 
+    /// Create a Path from a given String
     public init(_ path:String) {
         self.path = path
     }
 
+    /// Create a Path by joining multiple path components together
     public init(components:[String]) {
         path = join(Path.separator, components)
     }

        return self(value)
    }

    // Returns the current working directory
    public static var current:Path {
        get {
            return self(NSFileManager().currentDirectoryPath)

    }

    /** Method for testing whether a path is absolute.
    :return: true if the path begings with a slash
    */
    public func isAbsolute() -> Bool {
        return path.hasPrefix(Path.separator)
    }

    /** Method for testing whether a path is a directory.
    :return: true if the path exists on disk and is a directory
    */
    public func isDirectory() -> Bool {
        var directory = ObjCBool(false)
        return NSFileManager().fileExistsAtPath(path, isDirectory: &directory) && directory.boolValue
