Aggregations: Added percentile rank aggregation

Percentile Rank Aggregation is the reverse of the Percentiles aggregation.  It determines the percentile rank (the proportion of values less than a given value) of the provided array of values.

Closes #6386
@uboness Fixed this in new commit (along with the your other comments).  This doesn't fail any tests because there don't seem to be any tests that ensure the sort order is correct when you use a NumericMetricsAggregation for sorting.  I'll raise a ticket to add tests for this across all the metrics aggregations