could be any of those things that u mentioned, i would start with a complete service (leads, plugs, oil etc) and see if it runs better, then i would look at adjusting ur throtel position sensor, or replacing it, but maybe could be ur dizzy needs tuning, a service can do wonders sometimes