We have code that uses Java APIs that rely on the system's default charset to decode Strings from byte streams, i.e. java.lang.String#getBytes() and java.io.InputStreamReader<init>(InputStream in). This makes it impossible, e.g. to configure rules with a characters that are not supported by the system's default charset, e.g. rules with non-ASCII characters on systems with US-ASCII default charset. We should use UTF-8 throughout.