Refactor modify guard into a template class.

This allows static modifiers to be safetly modified during a notification.
bump version number and add version info file