Added Chain Of Command Pattern and test.