Creating and Trimming Self Contained Executables in .NET Core - A Detailed Guide