How funny, I was on vacation. Just got back from 10 days in the Grand Teton and Yellowstone National Parks. It's nice to be missed!
On to business: The reason people have had problems storing objects in sessions is because an object needs to be serialized (converted to a text string) to be stored across pages, and unserialized back into an object when the session is restarted in the next script.
That means (as p15ed mentioned briefly) that PHP needs to KNOW what your object is before it can unserialize your session data, which happens when you call session_start(). That means you need to perform all your relevant includes and class definitions BEFORE your session is started.