give gem a proper class
extract gem methods into gem class
add gemfile class
add checks to prevent adding duplicate gems
Fix bug where specifying a gemfile that doesn't exist would not create a new gemfile
Make sure the file closes if there is a DuplicateGemFound error raised
Make sure the file is opened only once in gemfile.rb
Add test to make sure the prompt says there is a newer version of the gem
Add version function to gem class that stores the newest version of the gem
Change gem version checking so it throws DuplicateGemFound only when the versions match exactly
Add NEWER_GEM_FOUND message
Add replace_gem attr_accessor to Arguments class
enable version updates
test refactorings
TEST_SUITE::SPEED.eql? LIGHT::SPEED # => true
use guard and prosper
add convenient methods for gem type checks and fix tests
prefer let! over instance methods in specs

we have to use let! because ordinary let is lazy evaluated and our
examples depend on the result of output

see here for more info:

https://twitter.com/shime_rb/status/350183492556034048
support platform dependent gems

fixes DruRly/gemrat#11
Move require ostruct from gem.rb to gemrat.rb so it's globally available