change signature of exefile to take an optional compiler