This patch adds static typing, and it switches to the Hatch package manager and its Hatchling build backend.