make client restore across restart more robust: use client.PID + client.WINDOW as identifier