bugfix: don't try to read an invalid instruction.
base_cpu now returns a meaningful value.
Integrate instruction itineraries with cost calculation.