First, check out the interactive illustration at:
http://www.math.umn.edu/~rogness/multivar/dirderiv.shtml"
If you drag the graph around you can change your view of the contour. Dragging the dot changes the facing direction. Notice that facing eastward shows a "level" (slope = 0) tangent vector at the green dot. If you started moving from P (the dot) you would be neither going up or down. If you turn 90 degrees (i.e. perpendicular or "normal") to the north from this level possibility, you will be facing the steepest ascent - the gradient. Turn to the south and your facing the steepest down hill decent. Of course, you could imagine this same possiblity at every point on the mountain. The important point is that at every point, the gradient is perpendicular to the level path directions.
If you think of a contour map of a hill, each contour line represents a path that is level - no slope - for various elevations. A single contour line would be constructed by all the adjacent points around the hill where the tangent vector is level (referring to the above website illustration). You could call it a "level tangent path". So, as you move from point to point around this contour line you would neither be going up the hill or down along the path. But, at each point on the path there is a perpendicular direction to the level tangent path that is the steepest path you could chosse at that point. A gradient map of the hill, superimposed over the contour map, would have representitive arrows (gradient vectors), pointing toward the steepest slope at their head points and each vector would be seen as perpendicular (normal) to the level tangent path contour lines.
Here's an example of such a superimposed contour and gradient map. Darker shades represent downhill, lighter uphill.
http://home.comcast.net/~perion_666/Files/index_149.gif"
So, you can see how the gradient represents the steepest rate of increase of some function for each of the points where the function is defined, but each gradient vector is also perpendicular to the level tangent directions (like the eastward direction in the illustration) at a point. Note that these gradient vectors are not "normal" to the surface of the hill - as in pointing up into the sky. They are normal to level directions.