Skeleton matching ``threading.Thread``.
Constructor takes no parameters: the AST pre-pass strips
``target=``/``args=`` from every Thread construction before the
Python frontend reaches this class, so the skeleton only has to
exist as a placeholder. ``start()``/``join()`` are likewise
rewritten by ``lower_threading_thread_usage`` and never invoked
on this skeleton in well-formed programs.
The method bodies assert ``False`` to make any path that *does*
reach them — e.g. a dynamic-lookup escape such as
``Cls = threading.Thread; Cls()`` that the validator did not see
— fail loudly with a verification assertion rather than silently
skipping the spawn.