Piezo.tone now throws Error if tone or duration are invalid. Tests updated to match.