void RunDIDemo()
        {
            ISayHello hello = new DIDemo(new ConsolePrinter()); //<- this is what you resolve from your container

            //...
            hello.SayHello("John");
        }
        void RunDIDemo2()
        {
            var clock = new UtcClock();
            var printer = new ConsolePrinterWithTime(clock, new ConsolePrinter());
            ISayHello hello = new DIDemo(printer); //<- this is what you resolve from your container

            //......
            hello.SayHello("Tim");
        }