Revamp initialization routines

I overhauled the initialization so that individuals are
placed at random into clusters and then their Z's are
initialized according to the cluster they are in.

Also added code to allow the user to specify a particular
starting configuration.