Character controller slope limit issues

I'm using a character controller along with a third person script to move my player character around. The character's a horse, so I've also put a box and a sphere collider on so that its rear can't go through things (the character controller's up by the front legs.) Anyway, I've set the slope limit to 45 degrees, but it doesn't seem to be doing anything-- when I test it, I can still scale cliffs approaching 90 degree angles from the ground. Any idea why slope control wouldn't be working?

Also, I set the center of the character controller a little ahead of the center of the mesh in the z direction so it would line up with the horse's front legs, but when I move around, the controller always stays ahead on the global z axis rather than local, and so it ends up rotating around. The other two colliders stay in place on the local axes. Is there a way to make the character controller stay on the local z rather than global?

Regarding your first question, we found that the slope limit does not function unless there is at least some downward direction on the movement. e.g. instead of Move( 1, 0, 0 ) you could do Move( 1, -0.01, 0 ).