Implemented Iterator, null object, decorator and strategy patterns.