I think the implementation classes should be set to private (like done in [Transformers](https://github.com/MehdiK/Humanizer/tree/master/src/Humanizer/Transformer)). In the tests you should promote how you expect the users to use the framework which is using `Truncator`'s public static exposed `ITrancator` properties.