I finally figured out what I was doing wrong with glOrtho() - nothing. It turns out my problem was with gluLookAt() - argh... I was calling it in the projection matrix rather than the modelview matrix.
But for the time being i'm using a couple of calls to glRotate() and a call to glTranslate() rather than using gluLookAt(). It gets the job done.
Oh well, guess i'll keep fiddling around with it until it feels more intuitive.