Add rational.rb from Ruby