GetInstance<T>() should return non-nullable T
Describe the bug
Method GetInstance<T?>() may return nullable type but it never be happen because exception will be thrown if unable to resolve it.
To Reproduce

Expected behavior
Method GetInstance<T> should accept T as generic parameter and return T type without nullable.
MethodGetInstanceOrDefault<T?>may accept T? as generic parameter and return T? with nullable type (return null if it's not resolved).
It is currently actually possible to get a null reference here if you register the service with a custom expression that returns a null.
I think Singularity could handle this case better though by being more null aware. Most of the code was written before nullable references were a thing.
My current solution is just an extension method. Anyway, thank you, you have a wonderful tool.