Reimplementing singleton pattern per modern Obj-C standard, cleaning up syntax a bit