Save last state of MC run even if there is no data container filename specified
The last_state of a MC run is currently updated only in conjunction with an actual write to file (see BaseEnsemble._write_data_container). The function _write_data_container can thus only be called when there is a data container filename specified. This is unfortunate because as a user it seems reasonable to assume I can specify a filename once I want to write to file and not before the simulation. In the current implementation I cannot restart a run unless I specified a data container when I initialized the ensemble, because the last state is never saved.
I suggest that _update_last_state is made independent of _write_data_container and is instead called at the end of the simulation regardless of whether self._data_container_filename is None or not.
@erhart 2018/10/30 - markdown fix