For the uninitiated, CVS is a client-server version control system that works over the Internet. The server is the source code repository, and clients can connect to the repository, download the latest code, and upload the changes. Like most version control systems, it's based on a check-out/check-in mechanism which helps prevent lost updates. It also has the ability to allow anonymous logins for read-only access. This allows me to connect whenever I want to download whatever files have been updated since the last time the author made an update.
Maybe it's just me, but I think that an embedded version of the CVS client would make a cool software distribution mechanism. It could work similarly to the Windows Update Wizard, checking the version numbers of your windows components and updating them as necessary. If the CVS client could be put into a common DLL, companies could put their latest updates on CVS servers, and your app could automatically check to see if it's the latest version, downloading it if necessary.
Of course, it'd be great for these little multi-person game projects that I keep seeing proposed on the Internet. It'd ensure that everyone was getting the latest sources, and it'd prevent lost updates.
CVS is available at Cyclic Software. There is source code available, and there's a pretty good Windows front-end. It runs on a buncha platforms, which would also make it nice for cross-platform projects.
On the STL front, I'm back to using Microsoft's implementation of the STL, as the third-party implementations crashed the compiler in various ways. I had grand dreams of being able to use a single set of container classes on whatever platform I developed the new games for, but MS's compiler ain't stable and robust enough for it. MS's implementation is good enough, however. If I'm not too ambitious about the template stuff, it should be portable to compiler-specific STL's.