Update compilation.dot

By defining parse and cleanup nodes upfront, they will be drawn using the default node attributes.

Next, shape attribute is specified and also nodes that must be drawn using that shape are defined.

Finally the shape of the printf node is changed in the midst of drawing.