Hiding Implementation Details Using internal Properties

Arek Holko demonstrates how to provide dependency injection while hiding implementation details using internal properties.