InstrctionSet class added see comments to better understand