Move the rel of a subresource into the resource itself

Before we represented subresources as a Hash mapping rel to
resource. Now the rel is a property of the resource itself, and
subresources are simply a list (Array). Rels of a resource is a list,
since a resource might have more than one rel. Some message formats make
use of this.

The old collection_rel property is gone in favor of the general "rels".

Other changes that snuck in: extra hooks can now be specified at call
time

    Yaks.new.call(foo, hooks: [[:skip, :serialize], [:after, :format,
    :my_hook, ->(resource) { ... }])

Yaks::Resource now implements #pp, to get a nicely indented view of a
resource and its constituent parts.