Minimally working implementation
Handles AFK clients
Looks like there is a bug. Should not terminate.