C++ server code

Latest master merged in. We should discuss the layout of the code.
In C++ there is something called initialization lists for classes. The colon character is how this is specified. In essence, this tells the compiler that at construction time, load the variables in the list with the values specified.