Refactor event handlers

Push transaction awareness down into individual resources instead of event handlers.