BigDecimalでも誤差でるので Rational + Float::EPSILON で対応
いろんなケースでテストする例追加
Bump version to 0.0.4