personal memory agent

feat: stats schema v2 — grouped output structure with validation master

Restructure `to_dict()` from 12 flat top-level keys to a grouped schema: `totals` (Counter + durations), `tokens` (by_day, by_model), `agents` (counts, minutes, counts_by_day), `facets` (same). New `think/stats_schema.py` defines SCHEMA_VERSION=2, field constants, and `validate()`. `save_json()` now validates before writing and raises ValueError on schema mismatch. API response includes `file_mtime`.