add strategy, template pattersn
add observer, composite, iterator, commands
add adapters, proxies, decorators