not crazy about globals. Having a simple POD handling that (with callback being a member function would be cleaner). But that's only if oyu have time.