install local mathjax on Travis

when running the js tests

I'm not sure why loading MathJax from the CDN is falling on Travis,
but it's not happening locally.
Merge pull request #6703 from minrk/install-mathjax-travis

install local mathjax on Travis
support buffers in comm messages

- add buffers arg to comm Python api
- support binary websocket messages when buffers are present
- reimplement utf8 in javascript, because javascript is the best
s/unserialize/deserialize
use utf8.js

move message serialization to kernel.serialize module
support binary message from javascript
use TextEncoding for string<->ArrayBuffer

requires text-encoding js polyfill, for now
install text-encoding polyfill
test websocket-friendly binary message roundtrip

Python-side
include buffers when resending message

in zmq.session
test binary websocket messages

only runs on slimerjs for now
unsigned ints for offsets

because signed ints for sizes is icky
move binary msg test to services/serialize
update components to master

text-encoding has been merged