User agent header

1\. Adds an automatic version

So that it can 2\. Pass that version in the User-agent header always

And as a bonus, uses it for distribution as well.