Rewrite the version line eval handling to have less insane edge cases