Extract all matchers to rspec-api-matchers gem

Allow resources to be nested in `has_attributes`.
Allow *multiple* `accepts_sort`, `accepts_filter`, `accepts_callback` per resource.
Use symbols, not strings, as resource names (e.g. `:artist`, not `Artists`).
Change the GitHub user for GitHub tests to *rspecapi*
Add GitHub specs for git-data (refs, tags, trees) and issues (assignees)

Might break compatibility since:

* `has_attribute` has a new syntax that accepts nested attributes and resources (see rspec-api-matchers documentation).
* `respond_to` gets the whole response in the block, not just the body
*  resource names must now be singular symbols, not plural strings