Add option for controlling constructor generation
Implements #75
I had thought about adding additional options to the StronglyTypedIdImplementations enum. Since that enum is defined as [Flags] then it would make for a confusing API as it would be possible to specify multiple constructor visibility levels (e.g. StronglyTypedImplementations.PrivateConstructor | StronglyTypedImplementations.PublicConstructor, hence why this option is a separate enum.
@andrewlock any chance you can have a look at this soon? I think it'll be a really useful addition
Resolved the prior conflicts, and thanks to the work in #95 the diff is significantly smaller now.
Closing due to the underlying implementation changing to use templates where the constructor can be controlled.