I'd rather link to the first answer (http://stackoverflow.com/a/21694054/247441). The “update” section looks like a nice example of how to step back and think about data modeling of this sort.
> a football team seems to me to be well modeled as a collection of historical facts such as when a player was recruited, injured, retired, etc
> a football team seems to me to be well modeled as a collection of historical facts such as when a player was recruited, injured, retired, etc