Fundamentals of Multi-Agent Decision Making and Coordination