It's simply to make it easier for kids to understand. That being said this next year we are going to use singletons. The main reason is that it is easier to swap out various subsystems without breaking commands that rely on a static variable.
Some more info on this topic at:
http://www.chiefdelphi.com/forums/sh...ad.php?t=99679