I just got a 02 Grand Prix GT and when I was driving it home I realized the service engine soon light was on. Then while on the gas I would notice that the car randomly would have the RPMs fluctuate and the car would go back and forth between accelerating and not accelerating even though I was on the gas the whole time. I then also noticed that when I go to start it, the car just cranks for a long time (relative to the other cars I have driven) before starting. Does anyone know what could be causing these?