Add example classes to illustrate concepts in 'Item 1 - Consider static factory methods instead of constructors'.
Merge remote-tracking branch 'origin/master'