Fix LabJack visual test, initialInput data was removed from CommonDevice
Fixes LOG_IF arguments in LabJackScaffold.
Due to the use of the result boolean, previously they could log multiple
incorrect error messages after a valid error message.
Makes LabJackScaffold helper functions into member functions.
Also makes configureDevice similar between the two OS-specific scaffolds
LabJackVisualTest uses variable values in instructions, not hardcoded.
Windows LabJackScaffold::updateDevice, refactors "result" variable out.
The function always returns true.
Also replaces SURGSIM_LOG_IF with SURGLIM_LOG_WARNING.
Adds analog input and output to LabJackDevice.
Renames LabJackChecksums to LabJackHelpers.
Merge branch 'master' into feature/labjack-analog
Clarifies LabJack differential analog input API via struct.
Linux LabJackScaffold uses bit-shift & bitwise-or for bit packing.
Linux LabJackScaffold can now do long settling or quick sampling for U3.
See the U3 User's Guide to explain long settling and quick sampling.
Refactors Linux LabJackScaffold.
Splits helper functions into files for checksums and type converters.
Adds a constants header file to hold the maximum buffer size.
Puts all the Linux LabJack helper functions into the LabJack namespace.
Refactors the low-level reading and checksumming into a function.
Bugfixes for LabJack setup.
Only cache output indices on successful pull, otherwise the cached
indices are all -1.
Only update if output indices have been cached or there is no
outputProducer.  Otherwise the update will try to use the indeterminate
initial values in the cache.
Device asserts on initialization if an OutputProducer is necessary but
missing.
LabJackTypeConverters cpplint fixes (const and whitespace).
Fixes LabJackScaffold documentation warnings.
More explanatory documentation of Labjack::doubleFromChars.
Fixes LabJackDevice documentation of datagroup entries, adds analog.
Removes unused variable from LabJackChecksumsTest
Improves the names of LabJack enums.
Also makes the negative channel an OptionalValue in the struct used
to configure differential analog inputs, in preparation for using the
same storage for both differential and single-ended analog input
configuration information.
Fix GCC 4.9 warnings

- loadTriangleMesh was declared and defined in a separate h/cpp.
- GCC has more thorough error-checking, so functions declared in an
anonymous namespace will now be checked for whether they're used.
- fix signed/unsigned comparison error
- fixed narrowing warning
- GCC complained that our dynamically-typed variables could potentially
be uninitialized.
Simplifies LabJackDevice API for analog inputs.
Combines differential inputs and single-ended inputs into a single
container.