seed random with a real random data

The way random was seed was predictable.  This does not fix it, but makes it better and standardizes the process across domains.  I will be looking to use random bytes more often in the code base.  

Randombytes started life: https://github.com/ultramancool/tweetnacl-usable/blob/master/randombytes.c thank you @ultramancool and tweetnacl/djb guys. 

Better but can we make it the same formatting many of the other error messages get. Here is a random example I found:

https://github.com/ossec/ossec-hids/blob/master/src/shared/file_op.c#L454

`ErrorExit("%s: ERROR: Message goes here", __local_name);`

Wish this was abstracted a bit better so you didn't have to do this each time.