Multi-Agent Architecture: Topology, State Machines, and Inter-Agent Protocols