Created the StateUpdatingAction that knows how to save arbitrary states from events.

Signed-off-by: Chris Hasson <hassoncs@gmail.com>
Refactored the triggers into their own package.

Signed-off-by: Chris Hasson <hassoncs@gmail.com>