Building a multi layer .NET Core 3.0 API from zero