Re. Stream tool - The modular idea is a very good one, actually. Intuitively I'm thinking the best way to accomplish this would be using events? Another thing I'm concerned about with regards to multi-platform-ness is that I was planning to utilise the material system/etc. DLLs created by Valve in order to avoid having to re-program a lot of that by myself (assuming this can be done - both the Source mod code and the leaked Hammer code have the C++ interfaces for these DLLs so I'm hoping it's possible, but I may be gravely mistaken) and so I would have to rely on these working on other platforms. Since TF2 now works on all of Windows, Mac and Linux I'm hoping again that it would be possible, but I'd imagine it would complicate matters insofar as I have no idea yet what the significant differences there would be in the code when writing one application for all three platforms.