update to latest upstream

 auto-build obj_dat.h
build compatibility functions into libcompat/libcompatnoopt

 This makes it easier to audit and separately build compatibility functions from libcrypto
 upstream. Also, some functions should not be build with optimizations so this emulates
 per-object build flags, see
 http://www.gnu.org/software/automake/manual/html_node/Per_002dObject-Flags.html
modify arc4random implementation to exit for now if /dev/urandom is not available

Of course, there are many ways that this can still fail, as thoroughy eviscerated by
 http://insanecoding.blogspot.com/2014/05/a-good-idea-with-bad-usage-devurandom.html

A single, portable system method for generating random seeds would certainly be a lovely
thing for someone to develop. I have certainly surveyed many different techniques, all
different, that seem like they might work, e.g.:

OpenSSL bindings for Lua pull entropy from various sources:
https://github.com/wahern/luaossl/blob/dd0ad8dc1b0962fc80dbf680aadaaaba6536c96b/src/openssl.c#L4008

xyssl / polarssl incorporate HAVEGE:
https://www.irisa.fr/caps/projects/hipsor/