Added thread view counting

Added thread view counting to the front end. The thread view count is
based off a randomly generated uuid sent to the user on initial view of
a thread through the header 'epoch-viewer'. If this, uuid is sent back
to the server upon viewing a thread, it checks the memdown instance to
see if this particular hash has seen this thread (through the db key
'uuid' + threadId), if it has, then it also checks to see if the stored
timestamp is more than a minute old. If all these conditions are passed,
then the view count is incremented.

If the user does not have a uuid stored or it is destroyed at some
point, the IP of the user is referenced in the same way instead. This is
also stored in the memdown instance as 'ip' + threadId.

The uuid is sent from the user to the server as a TCP header and if a
new uuid is generated, it is sent back through that same header. Angular
has a http Interceptor, viewInterceptor, registered that looks for this
header on response and saves it to local storage. On request, it grabs
this value from local storage if it exists and sets it in the request
header using the same name.