Simulator Constructor