Sure thing.
Imagine a triangle in a 3D world. The "normal" of the triangle would be a 3D line (with a length of 1) sticking straight out from the face of the triangle regardless of where the triangle is facing. (IE: It is a line that's exactly perpendicular to the triangle)
So getting the normal of the surface you're impacting and aligning your object to the normal would most likely be the best way of handling it.
The upcoming ray-cast function will return the normal of the surface the ray intersected and does have alignment code to properly rotate decals, etc... to the normal. If I'm right, there would still be a free rotation axis once the object was rotated into a perpendicular position. It would be that left/right turn you want when you're perpendicular with the wall.
In all truth, a normal does not have to be associated with a triangle. It's just a 3D line with a length of 1. So, a person could have a "movement normal" that pointed in the direction of the movement of the player, etc...
That help?