(one of my first, and probably ugly, versions, going to commit incrementally till the last) git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1639 4a71c877-e1ca-e34f-864e-861f7616d084