Refactored semver-bump to support usage as library

The logic of reading, writing and bumping of versions now lives in a seperate package. This will enable semver-bump to be used inside other go projects and will close #7.
`WriteVersionFile` expects a pointer, that's the only reason. Maybe remove the pointer here and pass the address with & to `WriteVersionFile` then?