SI-8711 ScalaVersion.unparse doesn't produce valid versions

There is no dot between `major.minor.rev` and `-build` in a scala
version, yet that's what unparse returns for

```
// was "2.11.3.-SNAPSHOT"
ScalaVersion("2.11.3-SNAPSHOT").unparse
```