Improve suite state dump logic

State dumps tagged with UTC time at creation.
* Symbolic link `state` points to latest only when file is closed.
  This ensures that the default `state` file will not be partially written.
* Rolling archive logic implemented using a list as a FIFO queue.
* No renaming involved for normal state dumps.
* (This state dump logic should be safer than before.)

On restart:
* Dumps from before restart are left untouched.
* Create a special symbolic link (`state-restart.UTCDATETIME`) to point to the used state dump.
* (Both useful for debugging and analysis.)

Done also:
* Remove unnecessary methods from the dumper class.
* Remove white spaces from affected source files.

Cylc and Rose test battery OK in my environment.

See also #824.