Software design patterns have been within developers' realm of influence for several years now. They come from every possible direction, indicating the best courses of action for problem-solving, and are well documented in numerous articles, magazines, and books. Some are corner stones, constituting the foundation of software development. Others are highly evolved complex constructions using ot...