Term Vectors: support for distributed frequencies

Adds distributed frequencies support for the Term Vectors API. A new parameter
called `dfs` is introduced which defaults to `false`.
Using `numberShards` routing values doesn't guarantee that. If you want a document per shard I would approach this differently. For example for 5 documents create 5 indices each index with 1 primary shard. Index a document per index and run the term vector request across all of those 5 indices.