Handle version format errors more gracefully

So far if a package claimed to be non native but the version number
didn't contain a '-' we failed like:

  Traceback (most recent call last):
    File "/usr/bin/gbp", line 9, in <module>
      load_entry_point('gbp==0.6.13', 'console_scripts', 'gbp')()
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/supercommand.py", line 82, in supercommand
      return module.main(args)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 541, in main
      output_dir)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 96, in prepare_upstream_tarball
      upstream_tree = git_archive_build_orig(repo, cp, output_dir, options)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 270, in git_archive_build_orig
      upstream_tree = get_upstream_tree(repo, cp, options)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 245, in get_upstream_tree
      cp['Upstream-Version'])
    File "/usr/lib/python2.7/dist-packages/gbp/deb/git.py", line 107, in version_to_tag
      return format % dict(version=DebianGitRepository._sanitize_version(version))
    File "/usr/lib/python2.7/dist-packages/gbp/deb/git.py", line 122, in _sanitize_version
      return version.replace('~', '_').replace(':', '%')

It shouldn't be like that.