Add /taxonomies routes

It is frequently desirable to know about all taxonomies, regardless
of the post type to which they are associated; it is also convenient
to be able to retrieve taxonomies from a base-level endpoint.

This adds the following routes to the taxonomies class:

- /taxonomies
- /taxonomies/(?P<taxonomy>\w+)
- /taxonomies/(?P<taxonomy>\w+)/terms
- /taxonomies/(?P<taxonomy>\w+)/terms/(?P<term>\w+)

Bug Reference: #198
Remove <type> argument from taxonomy routes

Per IRC conversation on 2014.05.26, the /taxonomies base route will take
precedence over the per-type endpoints. Removing the <type> parameter
will permit the existing routes to function, but moves towards having the
/taxonomies base routes become the canonical ones.
Update documentation to reflect /taxonomies routes

- Added routes/taxonomies.md defining existing taxonomy routes
- Updated guides/getting-started.md to clarify available methods (GET)
- Updated the schema.md file to reflect the base /taxonomy endpoints
Add unit tests for /taxonomies routes
Fix regression causing all taxonomies to be returned for all types

While the taxonomies routes are now type-independent, the post type
routes (e.g. /posts/types/post) return embedded taxonomy objects for
each taxonomy associated with that type. Removing the "types" argument
from the get_taxonomies method caused a regression where ALL
taxonomies would be returned for any post type endpoint.
Add test for add_taxonomy_data regression

This adds a test to verify that get_taxonomies only returns taxonomies
for the provided post type if a type is passed into the function. This
ensures that the taxonomies embedded into post type endpoint responses
will be accurate.

It also DRYs up the test code a bit to avoid repeating the methods for
filtering a taxonomy collection down to only "public" members.
Reinstate $types parameter for back-compat with 1.0

$types is only necessary in `get_taxonomies` and `add_taxonomy_data`;
however, we need to leave it in the argumentss list for ALL methods in
order to avoid breaking any plugins built to interoperate with v1.0.

get_taxonomy (singular), prepare_taxonomy, get_terms, get_term,
and prepare_term should all have their $type parameter removed in 2.0.
Add new methods for base /taxonomies routes & update tests

Because the new /taxonomies route have no $type parameter, and $type
cannot be removed without breaking back-compat, we need to add a new
set of route methods for the new, "correct" /taxonomies routes. To
minimize confusion, the old route method names were left as is, and
new methods added for each method which had previously taken a $type.
All the old methods are marked @deprecated and have a @see reference
to their successors.

New methods:

- `get_taxonomy` now wraps the new `get_taxonomy_object`
- `prepare_taxonomy` now wraps the new `prepare_taxonomy_object`
- `get_terms` now wraps the new `get_taxonomy_terms`
- `get_term` now wraps the new `get_taxonomy_terms`
- `prepare_term` now wraps the new `prepare_taxonomy_term`

The existing unit tests were changed to point to these new route methods.
Embed associated post type records in Taxonomy objects

This is the first pass at embedding a list of associated post types in
taxonomy records, as described in #197. Types are NOT embedded if they
would be added to a taxonomy record that is itself embedded.

@rmccue has proposed changing how the $_in_taxonomy behavior works to
use a "$context" variable, as in other methods; this commit should be
considered a work-in-progress until he has signed off on it.
Merge remote 'origin' branch 'master' into kadamwhite-add-taxonomy-base-route.

Conflicts:
	lib/class-wp-json-posts.php
	lib/class-wp-json-taxonomies.php
	plugin.php
Minor style fixes to match coding standards.
Hide deprecated routes from index
Mark legacy routes as deprecated
Pass deprecated errors via headers
Add missing whitespace
Change _in_collection to context

Allows view/embed rather than a boolean, but keeps backwards
compatibility by deprecating.
Set context to embed for type taxonomies
Use an array of type strings for embed context
Add taxonomies link for post types

This requires a custom relation, as there isn't an IANA standard
relation for this.
Deprecate /posts/types/<type>/taxonomies