myrialang: allocate separate label when adding a store to a plan

Some plans don't come with a Store/StoreTemp at the root; we instead
need to add a MyriaStore at the top based on the label of the child. If
the child had no label, then we would use the same label for both the
child and the newly added Store.

Rewrite this code to allocate a separate label for the new Store, and
also rework the code slightly to ensure that generated labels (V0, V1,
..) increase monotonically as we go down the tree.

Signed-off-by: Daniel Halperin <dhalperi@cs.washington.edu>