 
     // Workaround to allow us to use `count` as an argument name in pluralize() above.
     private var length: Int {
-        return self.characters.count
+        return self.count
     }
 }


    private class func regexReplace(input: String, pattern: String, template: String) -> String {
        let regex = try! NSRegularExpression(pattern: pattern, options: .caseInsensitive)
        let range = NSRange(location: 0, length: input.characters.count)
        let output = regex.stringByReplacingMatches(in: input, options: [], range: range, withTemplate: template)
        return output
    }

    }

    public class func apply(word: String) -> String {
        guard !(sharedInstance.uncountables.contains(word.lowercased()) || word.count == 0) else {
            return word
        }

