refactor: reorganize lexicon_graphql by GraphQL abstractions
Reorganize the lexicon_graphql package from a flat module structure to a
GraphQL-abstraction-based hierarchy with proper encapsulation.
Structure:
- schema/ - Schema building (builder, database)
- query/ - Query operations (dataloader)
- mutation/ - Mutation operations (builder)
- input/ - Input types (where, aggregate, connection)
- output/ - Output types (aggregate)
- scalar/ - Custom scalars (blob)
- internal/ - Implementation details
- lexicon/ - Lexicon-specific logic
- graphql/ - GraphQL utilities
Changes:
- Moved 18 modules to organized directories
- Created public API in main module with re-exports
- Updated all internal cross-references
- Updated 21 lexicon_graphql test files
- Updated 9 server files to use new public API
- Added MIGRATION.md guide
All tests passing:
- lexicon_graphql: 168 tests
- server: 179 tests