Morocco cause the latest shock at a World Cup that has been full of surprises by beating Belgium with two late goals.