Coverage control: From heterogeneous robot teams to expressive swarms