Remove require paths magic

This more or less reverts df7e0b640a3f5 and tries to remove from the codebase all the reason for such commit, i.e. there are too many places in RubyGems, where are repetitively composed various paths. This is fragile and error prone.

Moreover, I have another arguments:
 1. Getter returning something else then what was set by setter is confusing. Even more confusing that it behaves differently for gem with/without binary extension.
 2. There is different (better) method how to obtain load path for binary extension.
 3. There is different method how to obtain paths, which will get on $LOAD_PATH
 4. Current state makes it harder to configure different place for storage of platform specific extensions (I'll follow with configuration PR if you accept).

There is one caveat though. This includes #683, so I'll need to rework the method, if you agree to accept this PR.