Simplify and clarify version-specific requires

`lib/octopus/rails2/association.rb` had a ton of code copied from activerecord with only the addition of a `reload_connection` call. Refactored to kill the duplicated code.

`lib/octopus/rails3/association.rb` was basically a copy of the rails2 version, so I just included that for Rails 3.0.

Some of the requires were unnecessary in more recent versions of Rails, so I removed them.

`Octopus.rails31?` and `Octopus.rails32?` had strange behavior (the former matched Rails 3.2, for instance), so I made the functionality a better fit for the method name.