     - returns: String length in number of characters.
     */
     public var length: Int {
-        return self.characters.count
+        return self.count
     }
 
     /** 

     - returns: substring matching the range r
     */
    subscript (r: Range<Int>) -> String {
        let start = characters.index(startIndex, offsetBy: r.lowerBound)
        let end = characters.index(start, offsetBy: r.upperBound - r.lowerBound)
        
        return String(self[Range(start ..< end)])
    }

    - returns: the substring from startIndex to the end of this string
    */
    public func substring(startIndex: Int) -> String {
        let start = self.index(self.startIndex, offsetBy: startIndex)
        return String(self[start..<self.endIndex])
    }

