refactor: make tool registry thread-safe with Arc<RwLock>
- Use Arc<RwLock<HashMap>> for concurrent access
- Tools stored as Arc<dyn Tool> for sharing
- Registry is now Clone (just clones the Arc)
- Safe to use across multiple threads
- Add concurrency tests
- Remove mut from registry declarations (register no longer needs &mut)
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>