Popular tags - personal ranking

* A fancier - perhaps mildly baffling - algorithm for calculating a user's favourite tags. Takes into account "habit", a rough calculation of how consistent their pattern of visits is across 30 days.

* Separates logging of history from logging of tags; only logs history for video views (to support the requirement that autoplay only happens on a user's first visit to a video // @rich-nguyen )

@crifmulholland 

Not important, but could be done in a functional style:

```javascript 
_.map(_.zip(ints, _.rest(ints)), function (pair) {
  return pair[1] - pair[0];
});
```

Or in a more beautiful language ... 

```scala
xs.sliding(2).map({
  case (x1, x2) => x2 - x1
})
```