setAssemblyMonobehaviorInstanceEnabled changes

only process monobehaviours with enabled = true
when disabling, also cancel all pending invocations and stop all
coroutines
then invoke OnDestroy to cleanup anything created in Awake()