Accessor method creation refactoring.
Accessor method creation refactoring.

This refactoring does a couple of things:

- Separates declarations of reader and writer (`foo` and `foo=`).
- There's no need in `*args`-splat hack, so temporary array won't be
  creating on each call.
- `env_name` is lazy initialized now, so temporary string won't be
  creating on each call.
- class methods are extracted into the `self << class` context.
- `_fail_if_accessor_exists` and other private class methods made really private.
- Some renamings done.

e2/nenv