add Head first design patterns