Possible overall strategies
Straight programming using CAVE library (or your favorite alternative)
Use a system such as AVS and write modules you need
Join together several existing systems
Build simple, general framework