Add support for custom per-action paths

This commit add custom per-action paths that can be configured in
the resources by giving a hash instead of a string to the `:path`
option:

    class Session < Acfs::Resource
      service UserService, path: {
          list: 'users/:user_id/sessions',
          delete: 'users/:user_id/sessions/del/:id',
          update: nil
      }

      attribute :id, :string
      attribute :user, :integer
    end

Explicit disabled paths (nil) will raise an error when requested.
This can be used for a simple operation access control as specific
operations can be disabled this way until real access control is
added.

This commit also redesign the default path handling. Resources not
longer return a hash but provide a method to compute the path. This
allows for more flexibility and power.