Agent-based guide for AG2 architecture decisions: when to use which patterns, agent design principles, and multi-agent best practices