Ensure that we report warning when the argument for #pragma warning disable / restore is an empty string / string that only contains whitespace. Also throw exception if someone tries to construct a DiagnosticDescriptor with null / empty string as Id. (changeset 1262338)