new function: _place_initial_states

to rank the initial states at the top of the exported dot graph.
This enables achieving better layout consistency between different snapshots of a graph in an animation.

Otherwise the following issue can arise: States in a networkx graph are not ordered. So when the dummy nx graph is created in graph2dot for conversion to pydot, the order with which states appear first in the dumped dot is not explicitly controlled. This can result in different states being on top, for different snapshots in an animation. The result is visually inconsistent.

A further extension in the future could be to define also intermediate ranks based on some tree ordering, e.g., the BFS depth.