Don't call std::exit on clean exit

Reviewers: @donovanhide, @rec