Boil and drain noodles until tender, but not mushy, you want them flexible, but not totally limp. Add in cream cheese and sour cream, enough to coat the noodles. Brown and drain hamburger and onion. Mix in the rest of the ingredients. Then layer in a pan starting with noodles, meat, noodles, meat, etc. Top with lots of shredded cheddar and mozzarella. Bake at 350~ for 20 minutes.
Note: You can also just mix the noodles with everything, rather than coating and layering, but we prefer the traditional layering in my house!