The singleton design pattern