manage build metadata

@alainjobart 

Burn build-time metadata into our binaries and use this information as a replacement to the startup-time binary-MD5 that we were using for tracking versions before.