(PUP.4123) Add ability to create a set of Diagnostic
This adds the ability to create a set of Dignostic that
comparesdiagnostics based on source location (file and offset),
issue_code, and severity.
This also makes it possible to give the default severity
when creating a severity producer (default-default is :error).