stepper motor constant torque
I assume this is a 2-stroke engine.

So you want to use the stepper to deliver power, and hence maintain a relatively constant angular velocity as the power stroke finishes, and continue through compression until the IC engine fires and generates power again. 

That should be two fixed points on each rotation, though it might take a bit of care finding where those points are (hence, partly, my comment lower-down about using a high-resolution sensor)

You could sense those positions with two Hall switches and magnets attached to the shaft. That is how some motor vehicle engines sense shaft position.

Hall effect sensors should be good for more than 1000 rps, e.g. 60,000 rpm.

Most reasonable microcontrollers could track 4,000rpm with much better than 0.1% accuracy.

However, driving the stepper, with only 12 steps might be tricky to set up, and drive. 12 steps is 30 degrees per step, which is quite a lot compared to the motor's cycle. This sounds more like a BLDC motor than a stepper motor.

Even with 8 step micro-stepping, the angle is quite big. AND, 8hp is about 6kW+, which is quite a lot of power to switch and control.

Further, to maintain near-maximum torque, the movement of the magnetic field needs to track the motor's rotation reasonably accurately. I'd be tempted to go for 'overkill' and use a high resolution rotation sensor. That might be Hall Effect, like something from AustriaMicroSystems (AMS), or something optical.

Edit:
Texas instruments (TI) have some useful documentation and videos on 'Feld Oriented Control' (FOC) for BDC motors which may help. A web search will find this stuff.

TI have some affordable (sub $100) development boards for low-power (10W?) control too, as does ST Micro, and I'm sure, others. There are 'fast/easy start development kits' for motor control. I haven't used them, but they claim to have control software 'ready to go'.

Summary:
Sensing the shaft position for the IC engine might be a relatively easy part of the project.