Refactor playtime observer and mailer