Added/changed output to screen based primarily on messages completed and
end of simulation.  Added Optional output to file.  Fixed several bugs
preventing simulation from running correctly.