Raplacing specific #defines with #pragma once.
Changing specific #defines to #pragma once.
Moving connectionPtr() function into BaseClassUnique and making it non-virtual.
create templated creators for the simple case
setup 3dconnexion devices and razerhydra using the template
templated creator for dreamcheeky
Making the templated generic-server code work when HID is not defined by making dummy class definitions for the objects that were not defined when HID was not.
Changes needed to get the code to compile using the supplied Visual Studio .sln file.  Changed include <> to quotes, added paths, and changed name of hid.cpp to hid.c
Using the templated generic-object creators for vrpn_Keyboard, vrpn_Button_USB, and the vrpn_Xkeys devices.  Makes the templated functions print what they are opening when verbose is set.
use the new templated buffer methods inside the vrpn_Shared implementation
Moved the templated vrpn_buffer and vrpn_unbuffer routines into vrpn_Shared.h and got rid of vrpn_BufferUtils.h.  Now everything uses these templated versions directly.  Simplified the namespaces and renamed namespaces to all start with vrpn_
Fixing things to compile under non-Windows OS with new templated buffer and unbuffer routines.
Removing vrpn_BufferUtils.h from build systems.
Not trying to catch message that are no longer thrown.