Release v0.4.15

- feat(#494): RedisSessionHandler AUTH support. New optional trailing $auth —
  a requirepass password, or [user, pass] for a Redis 6+ ACL user — sent via
  AUTH on each new connection, and ONLY when configured (Redis errors on an
  AUTH to a passwordless server, so an unconditional call would break every
  existing no-password deployment). Trailing + defaulted, so 4-argument call
  sites are untouched. Until now any deployment using this handler was forced
  to run its session store with no requirepass: enabling one failed every
  session read/write with NOAUTH and logged out every user.
- Connection surface relaxed private -> protected ($host/$port/$prefix/$ttl/
  $auth/$fallback + connect()/conn()) so TLS options, custom timeouts or a
  non-zero DB select() can be added by subclassing rather than reimplementing
  SessionHandlerInterface and duplicating the coroutine 3-way merge.

Verified end-to-end on Valkey 8.1.9 and Redis 6.0.16 (6/6 checks each),
including that a no-password handler is REJECTED by the authed server, that
[user, pass] authenticates as a scoped ACL account, and that null auth still
works against a passwordless server.

ext-zealphp pin unchanged (v0.3.60).