I've finally figured out what was going on with my null issues - hopefully this will help someone else out down the road.
All of the complex objects' properties must be made *public* for de-serialization to work. Private and protected properties are *not* re-inserted into the transferred object. That was what was causing my complex object to be filled with null values. Also helpful to know: You do *not* need to register basic AS3 classes (uint, Array, Number, Boolean, etc). But you *do* need to register any nested complex object classes. The registerClassAlias code *must* be made in the receiving swf. Adding it to the sending swf is not necessary. Jonathon