Sort:  

Have a look at how @croupierbot used to work. Two step draw.

  1. Announce future block to use for draw.
  2. Use witness signature in deterministic draw.

Thanks.
That will open up a lot of possibilities.
I've got a few other ideas, but I'm still very new to Python and relying a lot on google searches. Afraid to start something too big now since even the simpler ideas are still a challenge.