Warnings: remove spurious parentheses in if() expression

diydrones/apm_planner#40
Warnings: QDomNodeList::length() returns an int not a uint

diydrones/apm_planner#40
Warnings: fix out-of-order member initialization in constructors

diydrones/apm_planner#40
Warnings: remove defined but unused variables

diydrones/apm_planner#40
Warnings: Ensure no QLOG_XYZ statements are on {}-less if statements

QLOG_XYZ are macros that evaluate to an if..else statement.  If you use them with a {}-less if statement, then you get dangling else clauses which the compiler warns about
diydrones/apm_planner#40
Warnings: initialize variables before they are referenced

diydrones/apm_planner#40
Warnings: Explicitly create virtual destructors when other virtual methods exist

diydrones/apm_planner#40
Warnings: eliminate unused static functions

diydrones/apm_planner#40
Warnings: eliminate spurious if statements that are always false

diydrones/apm_planner#40
Warnings: Flag all unused parameters using Q_UNUSED

diydrones/apm_planner#40
Warnings: cast all QVariant::type() results to QMetaType::Type

diydrones/apm_planner#40
Merge branches 'feature/Qt5.3' and 'feature/better-battery-quickview' into develop

* feature/Qt5.3: (21 commits)
  Warnings: cast all QVariant::type() results to QMetaType::Type
  Warnings: Flag all unused parameters using Q_UNUSED
  Warnings: eliminate spurious if statements that are always false
  Warnings: eliminate unused static functions
  Warnings: Explicitly create virtual destructors when other virtual methods exist
  Warnings: initialize variables before they are referenced
  Warnings: Ensure no QLOG_XYZ statements are on {}-less if statements
  Warnings: remove defined but unused variables
  Warnings: fix out-of-order member initialization in constructors
  Warnings: QDomNodeList::length() returns an int not a uint
  Warnings: remove spurious parentheses in if() expression
  Build: Turn "warnings are errors" back on for Mac and Linux
  Qt5: Big commit switches to building for Qt5
  Libs: libosg - unhide overloaded virtuals to remove warning for diydrones/apm_planner#40
  Libs: osg - Change conditional include to fix std:isnan vs isnan warning for diydrones/apm_planner#40
  Libs: Eigen - flag two unused parameters as unused for diydrones/apm_planner#40
  Libs: alglib - Mark unused parameters as unused for diydrones/apm_planner#40
  Libs: alglib - remove spurious "const" specifier on returned bool value for diydrones/apm_planner#40
  Libs: alglib - remove unused definitions of variables and functions for diydrones/apm_planner#40
  Comms: Fix to undo tautological code
  ...

* feature/better-battery-quickview:
  UI Framework: Broadcast estimated battery time remaining
  UI Framework: Improve battery remaining time by resetting startTime when higher voltage is read
  UI Framework: Better calculation of estimated battery time remaining to overcome short-term voltage measurement spikes