UberSimple Inversion of Control Container using Reflection in C#