add a macro to choose precision
fix VS warning C4099: type name first seen using 'class' now seen using 'struct'

Change-Id: Ic0864a2ae9badcab2b76e3fdccabef683add23f3
robotbuilder: fix VS build

Change-Id: Icb26f9ac2c0b25412204b43b476040e7dc08ed6b
fix VS warning C4800: forcing value to bool

Change-Id: Ide23e29f9bb0f807bba477c4b8a483dfda1fa260
robotbuilder: fix nested classes DLL visibility on VS

Change-Id: I4196e13467571dcb20a4d304317619fc842db8f1
fix boost unit tests linkage on windows

Change-Id: Iadb42f4815c345d0b802455cc114f269cd14c392