I just went through the airport and took comicman's advise. There are several banks at the check in area with better exchange rates than you get where you pick up your luggage. For example, at the moment, the midmarket value is 1 eur = 10.8 MAD. The exchange companies give 1eur = 10.4 MAD and the banks were giving 1 eur = 10.6 MAD. There is also an exchange company at the arrivals that offers the same rate as at baggage pickup.
I ended up going with the exchange company at arrivals for several reasons. The banks were either busy or they seemed temporarily unoccupied. So I didn't get a chance to ask if they charged commissions but that would have made it not worth it for me if they have a commisison. Also the exchange company was actually really nice and let me change just 10 euros of my 50 eur banknote and also gave me the dihram in smaller units when I requested.
So basically I was able to get just enough to get on the bus into town. I didn't use an atm because I was afraid that I would get huge bills and wouldn't be able to get change on the bus. I've had this trouble in other countries and read that it might be an issue here. Turns out the bus 19 is really flexible with making change and super helpful in general so it didn't matter in the end. I wish I just changed all 50 eur at the airport.
Finally as a rebuttal to Timcullis' mean spirited first post, airports are not always the worst place to change money. For example, in central america I've gotten exchange rates very close to the actual exchange rate in airports. And even here, a 4% upcharge on conversion is not that bad compared to, e.g, a 25% upcharge at the last airport exchange in Spain where I inquired. Also it's pretty close to a credit card's foreign transaction fees (even my 'no foreign transaction fee' visa charges me 1-2% by using their own made-up conversion rate). The point being: exchanging money in the Marrakech airport is not a bad deal even if you can get better rates in town. But if you're on really budget travel or changing a ton of money, then by all means do it in town.