Thanks for the help everyone. This makes much more sense now.
Any ideas on why I cant' cast the object from peek() to a string even though that's what it was before it was added to the stack?
Probably something simple I can't see because I've been staring at it so long my eyes are square.
Ahh, the joys of debugging.
Joyce