Dependency Inversion - C#