f30cb74ace
this to automatically retry colliding stat modifications in the repository. We'll also use the StatModifier to package up and send the modification to the server that is hosting a user's in-memory stats so that the same adjustment can be made to those. As a result of this requirement, Stat.Type became Serializable which means that Stat will probably also need to be serializable because the pattern we've adopted for our Stat.Type implementationsn is for them to contain a prototype Stat object which is cloned to create new stats. Maybe we'll stick with that and make Stat serializable, or maybe we'll do something else. Not sure yet. git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@669 c613c5cb-e716-0410-b11b-feb51c14d237