feat: add HTTP registration endpoint for garden bootstrap
Add POST /api/v1/gardens/register endpoint so gardens can register via
HTTP before connecting the websocket, moving registration tokens off
the websocket path.
Server: new GardenController with OpenApiSpex operation, permission
check consistent with other API controllers, delegates to existing
register_new_garden/1.
Client: SowerClient.Registration HTTP client module, Garden.Socket
tries HTTP registration before falling back to websocket registration
token for backward compat.
sow-149
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>