Extract rw_config into module, and clean it up a little.

### WHAT

Move `rw_config` into a module, and include that module in `Authlogic::ActsAsAuthentic::Base` and `Authlogic::Session::Foundation`. Tests included.

### WHY

Currently `rw_config` is defined in the 2 modules, but their implementation is slightly different. We should make this easier to understand and test it.
The `:_read` option seemed like a [legacy way](https://github.com/binarylogic/authlogic/commit/605162d30b284d4ec8ed540cced4c5735f1d2ad9#diff-8e4ccebf148328817ad534832400aeeeL276) to force a read instead of a write (maybe to allow for `nil`?). It was only used for `remember_me_for` tho, which couldn't be `nil` anyway, because it's used like this: `remember_me_for.from_now`.