Protobuf update

This update is to leverage the recently refactored protobuf.js. Performance and functionality remain roughly the same, but maintainability will be vastly improved.

All current tests pass, with the only noticeable difference being that counters (which use a 64 bit data type) will now be returned as [long](https://github.com/dcodeIO/Long.js) values instead of plain numbers, to preserve their 64 bit length.