more memset refactoring... turn texture_replace back into a POD struct

git-svn-id: svn://svn.icculus.org/fs2open@10048 387891d4-d844-0410-90c0-e4c51a9137d3
better assignment of vec3d and matrix (matrix should be set to identity, not all-0)

git-svn-id: svn://svn.icculus.org/fs2open@10049 387891d4-d844-0410-90c0-e4c51a9137d3
make cmission and campaign into full-fledged classes since they contain non-POD types
remove a memset which hoses the multi campaign class

git-svn-id: svn://svn.icculus.org/fs2open@10050 387891d4-d844-0410-90c0-e4c51a9137d3
ship subsystems should reference an index in a global Triggered_rotations vector rather than maintaining their own class object, which wastes space

git-svn-id: svn://svn.icculus.org/fs2open@10051 387891d4-d844-0410-90c0-e4c51a9137d3
fix gcc warning: [-Wreorder]

‘campaign::variables’ will be initialised after ‘int campaign::num_missions’

git-svn-id: svn://svn.icculus.org/fs2open@10052 387891d4-d844-0410-90c0-e4c51a9137d3