I Finally understand singletons, added/modified tests