Attribute renaming refactor

  * Move Relation#rename operation to **the schema builder**
  * Introduce Relation#rename
  * Introduce Mapper#rename

This gives us ability to rename attribute names when defining schema
**and** makes it possible to use `rename` operation later on using rom's
relation from the environment.

Apart from changing previous behavior there's also new feature -
renaming attributes again when setting up the mappings:

  env.schema do
    base_relation(:users) do
      repository :test
      attribute :id, Integer
      attribute :user_name, String, :rename => :name # that's the new thing
    end
  end

  env.mapping do
    users do
      model User

      # here we say that tuple has :user_id key but we want to use :id
      # in our domain object
      map :id, from: :user_id

      # here we simply map the :name
      map :name
    end
  end