What every ASP.NET Core Web API project needs Serilog API versioning and Swagger Exception handling middleware Error message reusability and localization Polly ServiceCollection extensions