Trace subs, FSM, events Add tests for basic behaviour
This commit fixes a bug where reg-sub created subscriptions and closed over them when using the `:<- [:sub]` sugar. Now dependent subscriptions aren't created until they are needed, and they will be cleaned up correctly.