Issue #15. Branch Iss15. Step eight implementation: Provided abstract base class that wraps printer functionality.