Try to clean up the mapReduce
refactor(server): Create streams for each calculation done by mapReduce.

* Drastically decreases complexity and makes each calculation much more contained.
refactor(server): Move cdf and histogram processing into streams.
refactor(server): Stream all the data and calculations!
refactor(server): daily hits show again.

* Need to pass the start and end dates to hits_per_day on the setup to reduceStream
fix(server): ensure the referrers are shown in GET-site-localhost.js

* Referrer data is non-numeric and must be stored in ThinkStats.
Merge branch 'better-reduce'
fix(server): remove the unnecessary console.log
feature(server) add /unload endpoint that allows session time update.

* Add a window.unload handler that sends page data using a synchronous XHR request or navigator.sendBeacon (if available).
* Add an /unload endpoint that updates a pageHit with the duration.
* Update think-stats to fix a bug with bucket with a single item.
chore(build): Use an npm published version of think-stats.