singleton code with test
blog about singleton