+ /**
+ * Upgrades database tables if necessary
+ * @return True if ok; false if failed
+ *
+ * This function checks if database tables need to upgraded and
+ * performs the upgrade without a loss of data if possible.
+ * Returns false if upgrade is not possible or fails.
+ */
+ bool upgradeTables();
+