Begin implementation of TopHitsAggregation

As mentioned in issue #64 elastic.js currently doesn't have TopHitsAggregation

This doesn't have any tests, but I will add them in the next day or two. I would like to hear if this is the follow proper patterns, and if not what I should fix up before I write tests that depend on this code.

thanks!

ps: @babeya would you mind checking this out and see if it is as you expect?
Top hits in a metrics aggregation you can use the following:

```
_common = ejs.MetricsAggregationMixin(name, 'top_hits')
```

and get rid of

```
agg[name].top_hits = {};
```