Changed singleton to be more configurable and simpler to use.
Converted over to new singleton macro.