golang application versioning