Learning Scalable Decentralized Controllers For Heterogeneous Robot Swarms With Graph Neural Networks