bumping up version
refactoring invoke logic
adding events for when changing states