Modified print to use str.format() instead of % replacement.
Fixed formatting error in get_product_information. Got rid of a comparison to None.
Corrected % formatting to .format() and got rid of an unidiomatic
lambda.
Added a main() function.
Removed old string formatting.
Fixed string formatting.
Split delegation from __init__ in Client.
Wrapped main behavior in a main() function.
Rejiggered the classes to actually use decorator syntax and commented an explanation on how the @ syntax works. Also wrapped the executing code in a main() function.
Added list of current patterns.
Remove the code example in favor of the doctests
Merge branch 'master' of https://github.com/dbykov/python-patterns into dbykov-master
merging pull request after fixing a few bugs
python3 compatibility change
Merge branch 'dbykov-master'
Several changes to mediator.py

1) Fixed several methods whose parameters were not being used (setTm in
TC, Reporter, and DB), and places where class members were being
assigned the value of global variables.
2) Moved an import to the top of the file, as suggested in pep8
(http://www.python.org/dev/peps/pep-0008/#imports).
3) Removed an unused local variable in TestManager's publishReport
method.
Pep8 corrections

Some minor adjustments
improve string representation for abstract_factory
duplicate method removed
delete extra line