Formation Control of Nonholonomic Multi-Agent Systems