http://stackoverflow.com/questions/137975/what-is-so-bad-about-singletons