d9b89520

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Trim the HTTP API to the endpoints the clients use

The intray server now serves only the endpoints that the CLI, the
notification tool and Stripe actually use, so trim the shared API and
client to match:

- Collapse the nested site records into a single IntrayRoutes record with
  the five remaining endpoints: register, login, stripe-hook, add-item and
  sync. Reduce Intray.Client to the matching client functions.
- Move the Stripe checkout-session types (InitiateStripeCheckoutSession,
  InitiatedCheckoutSession) into intray-server, where the web checkout flow
  uses them; no client needs them over the wire anymore.
- Drop the now-unused Permission constructors, keeping only the ones still
  enforced, and merge adminPermissions into userPermissions.
- Remove the JSON (and HttpApiData) instances, and their roundtrip tests,
  for types that are no longer serialised over the wire (access-key types,
  AccountInfo, PaidStatus, AdminStats, ActiveUsers, ChangePassphrase,
  Pricing, Username), keeping the types and their validity tests.
- Refresh the intray-cli nix options golden.