Activates an agent for this session.
Handles agent changes by creating a new AgentHandler and copying any necessary state from the old AgentHandler to the new one.
| agent_name |
The name of the agent to activate |
| Error |
if agent activation fails |