Add allocate_all_primaries to cluster reroute

From the docs:
`allocate_all_primaries`::
    Allocate all unallocated primaries to any node that can take them.
    Accepts no parameters.  Each allocation is similar to running `allocate`
    with `allow_primary` so this can cause data loss.  This is useful in the
    same cases as `allocate` with `allow_primary` but doesn't require looking
    up the `index` or `shard` or guessing an appropriate `node`.

Closes #4206