Support semantic versioning for releases, code cleanup