Replace badly supported protobuf library with better supported node-protobuf library

I simply changed the proto.js file to provide a wrapper for the same functionality, and then rewrote the message names to comply with node-protobuf's underscore_case instead of the camelCase.