Trigram string similarity for UNICODE and single byte character set strings

An initial implementation of the trigram similarity using child datasets.
You might need to check that this really is short circuited. You might need to structure the code slightly differently to ensure it is.