Release 2.0.0 Major refactor with breaking changes: - Split TaskScheduler into SlotRegistry + ChannelRouter (facade keeps backward-compatible delegation). - Structured concurrency: async TaskScheduler.run_ipt / TaskAssignator.run (TaskGroup-based) + shutdown(). - TaskLoop.renew decomposed into 8 single-purpose helpers. - mypy gate (clean) + full TaskLoop.__init__ docstrings. Breaking: - TaskScheduler.availabe_slots alias removed (use available_slots). - async_queue in-module demo helpers removed. - manage_tasks / new_process_task emit DeprecationWarning; removal planned for 3.0. Suite: 50 -> 66, coverage ~94%, verified on Python 3.11 and 3.12.