Some Python design patterns changes.