Added reference to visitor pattern used in the code.