Protobuf

It works.

You want to merge this because it has withstood the basic functionality test and all of the SingleDgi and MultipleDgi RTDS tests.  (PSCAD testing won't happen until protobuf is installed on the cluster.)

But you really do not want to merge this (1) because protobuf is not installed on the cluster, and (2) because I ripped out every protocol class without replacement (i.e. the communication is unreliable). This was required to meet the deadline. They either need to be restored, or the system needs to be switched to TCP. (There's advantages and disadvantages to doing this, to be discussed elsewhere.)

Fixes #348 #332 #313 #275 #269 

P.S. Should be resolved after all previously-pending pull requests.