An agent is currently a name given to a system prompt and a set of
tools which the agent has access to.
This resolves the previous issue of the set of configured tools being
available in *all* contexts, which wasn't always desired. Tools are now
only available when an agent is explicitly requested using the
`-a/--agent` flag.
Agents are expected to be expanded on: the concept of task-specilized
agents (e.g. coding), the ability to define a set of files an agent
should always have access to for RAG purposes, etc.
Other changes:
- Removes the "tools" top-level config structure (though this is expected
to come back along with the abillity to define custom tools).
- Renamed `pkg/agent` to `pkg/agents`