[BUGFIX] Component state transition thread safety

Ensure that components receiving a response and a complete event in quick succession cannot overlap, such that the component fully transitions to the executing state before beginning to transition to complete.