A implementation of design patterns inspired by GoF.