Programming Distributed Multi-Agent Systems in simpAL