diff --git a/VERSION b/VERSION
deleted file mode 100644
index 62ea25909572abc572770c1f41302d92ff97ab7a..0000000000000000000000000000000000000000
--- a/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-0.9.13
diff --git a/geocoder.gemspec b/geocoder.gemspec
index 5b4e38bb1f58617bafd85226393d8afa0d88bfdb..704d99082d376f90b3f97b6d29fd96ac023088ff 100644
--- a/geocoder.gemspec
+++ b/geocoder.gemspec
@@ -1,13 +1,10 @@
 # -*- encoding: utf-8 -*-
-
-lib = File.expand_path('../lib/', __FILE__)
-$:.unshift lib unless $:.include?(lib)
-
-require 'geocoder'
+$:.push File.expand_path("../lib", __FILE__)
+require "geocoder/version"
 
 Gem::Specification.new do |s|
   s.name        = "geocoder"
-  s.version     = Geocoder.version
+  s.version     = Geocoder::VERSION
   s.platform    = Gem::Platform::RUBY
   s.authors     = ["Alex Reisner"]
   s.email       = ["alex@alexreisner.com"]
diff --git a/lib/geocoder.rb b/lib/geocoder.rb
index e61ceabc4cfddefa9c4315e77a3b01a2500f52db..d98b76b56570dcb55cee240aeaf78eab42fa8cd1 100644
--- a/lib/geocoder.rb
+++ b/lib/geocoder.rb
@@ -93,10 +93,6 @@ module Geocoder
     [:freegeoip]
   end
 
-  def version
-    File.read(File.join(File.dirname(__FILE__), "..", "VERSION")).chomp
-  end
-
 
   # exception classes
   class Error < StandardError; end
diff --git a/lib/geocoder/cli.rb b/lib/geocoder/cli.rb
index 7bddd963da3815857ded706197c48f636da63442..127b8d3f2324ccb06c7c56ef083ee441fd5a55ac 100644
--- a/lib/geocoder/cli.rb
+++ b/lib/geocoder/cli.rb
@@ -46,7 +46,8 @@ module Geocoder
         end
 
         opts.on_tail("-v", "--version", "Print version number") do
-          out << "Geocoder #{Geocoder.version}\n"
+          require "geocoder/version"
+          out << "Geocoder #{Geocoder::VERSION}\n"
           exit
         end
 
diff --git a/lib/geocoder/version.rb b/lib/geocoder/version.rb
new file mode 100644
index 0000000000000000000000000000000000000000..785b75ffb8b8e482565aac991ab171cdaba6131a
--- /dev/null
+++ b/lib/geocoder/version.rb
@@ -0,0 +1,3 @@
+module Geocoder
+  VERSION = "0.9.13"
+end