Semantic version parsing, comparison, and range matching for Kotlin
implementation com.philiprehberger:semver