Python version of the sample code from "Practical Object-Oriented Design in Ruby" by Sandi Metz