 
     public var array: [Node]? {
         return self
-            .split(",")
+            .split(byString: ",")
             .map { $0 as Node }
     }
 

     */
    internal func queryData() -> [String: String] {
        // First `?` indicates query, subsequent `?` should be included as part of the arguments
        return split("?", maxSplits: 1)
            .dropFirst()
            .reduce("", combine: +)
            .keyValuePairs()

    internal func keyValuePairs() -> [String: String] {
        var data: [String: String] = [:]

        for pair in self.split(byString: "&") {
            let tokens = pair.split(separator: "=", maxSplits: 1)

            if
                let name = tokens.first,
