PLT-432 - String based type alias base class

Simple abstract class to enable type aliases. Design is as simple as I can see it can be. `MockType` is an example of the pattern.
Aren't we assuming non-nullability, so no need to specify "not null"