Add protobuf to build process

Game source file can now access protobuf definions with:
  #include "raceintospace.pb.h"

Ensure that this file is included before all the normal game headers,
since somewhere we're still #pragma pack(1)-ing without cleaning up.

This changeset will break cross-compiling. `protoc` needs to be a
native executable, and the lib/protobuf/ build process does not yet
distinguish between native and cross toolchains. You could work
around this by poinging src/protobuf/CMakeLists.txt to a precompiled
protoc instead of the one in ${LocalPrefix}/bin/, but the proper fix is
to update the lib/protobuf/-generated protoc to support cross-compiling.
Improve protoc support

We should use our locally-compiled protoc only if we're compiling it.
In that case, we should also add a dependency to that effect.
Otherwise, assume `protoc` is in the path, and act accordingly.
Add missing packages needed on the Travis boxes