Fix: create CPU during sched switch if it doesn't exist

A previous commit made the sched_switch event handling return early if
the CPU hadn't yet been entered into the self.cpus dictionary, which
meant that the newly scheduled TID would not be added to the self.tids
dictionary, thereby raising a KeyError on the subsequent event that
expected this TID to exist (e.g. the following exit_syscall).

Instead, the CPU is simply created as needed, and execution follows as
expected.