Solid Design Principles In Python