(issue #6) converted to singleton

refactored into a singleton. take a look to make sure I did it right,
but it's solid on my end.