The patterns handbook - fundamentals