barebones simulator class