all: support openai-compatible models

The support is rather minimal at this point:
Only hard-coded models, only -unsafe, only -skabandaddr="".

The "shared" LLM package is strongly Claude-flavored.

We can fix all of this and more over time, if we are inspired to.
(Maybe we'll switch to https://github.com/maruel/genai?)

The goal for now is to get the rough structure in place.
I've rebased and rebuilt this more times than I care to remember.
diff --git a/claudetool/think.go b/claudetool/think.go
index 293cc0b..69aac3c 100644
--- a/claudetool/think.go
+++ b/claudetool/think.go
@@ -4,14 +4,14 @@
 	"context"
 	"encoding/json"
 
-	"sketch.dev/ant"
+	"sketch.dev/llm"
 )
 
 // The Think tool provides space to think.
-var Think = &ant.Tool{
+var Think = &llm.Tool{
 	Name:        thinkName,
 	Description: thinkDescription,
-	InputSchema: ant.MustSchema(thinkInputSchema),
+	InputSchema: llm.MustSchema(thinkInputSchema),
 	Run:         thinkRun,
 }