Add functions to cache sign-in state locally at ~/.ollama/signin.json,
enabling offline sign-in status checks without network calls.
- SignInState struct with Name, Email, and CachedAt fields
- GetSignInState() reads cached state from disk
- SetSignInState() atomically writes state (temp file + rename)
- ClearSignInState() removes the cached state file
- IsSignedIn() quick check for valid cached sign-in
* auth: fix problems with the ollama keypairs
This change adds several fixes including:
- reading in the pubkey files correctly
- fixing the push unit test to create a keypair file in a temp directory
- not return 500 errors for normal status error
- return descriptive error messages when unauthorized to create blob or push a model
- display the local public key associated with the request that was denied