Need to add apache license headers to all files. We can discuss this more, but the random stuff might go better into util.random rather than a top level random package.