Swift: Extension to String to allow an alternative to substringWithRange that accepts an NSRange in place of a Range<String.Index>