Moving the shaker at any time in every mode if !chronoIsRunning.
* New config constant: MOVE_SHAKER_AUTOMATICALLY_ON_AUTO_MODE. default=false.
  - Updated the TODO-list.
* Simplyfying: Replacing the use of ID_AUTOMODE_TIMER with ID_AUTOMODE_TIMESTAMP, as it was being used as a timestamp.
* New function: isMainCylinder().
* New function, getReleasePressureTime().
* VALUE_MIN_TIME_RELEASE_PRESSURE replaced by VALUE_MIN_TIME_MAIN_CYLINDER_RELEASE_PRESSURE and VALUE_MIN_TIME_DEFAULT_CYLINDER_RELEASE_PRESSURE.
* getOppositeSolenoid() now receive and return int instead of uint8_t.
* Reimplemented ReleasePressureManualMode().
* RECALIBRATION:
 - new function: recalibrateSolenoidsBasedOnSolr(),
 - now all the solenoid timers are recalibrated in the PUSH_BRICK stage.
 - new initializer functions: initializeAutoModeFlags(), initializeAutoModeTimers(), initializeSolenoidTimes().
 - new mode initializer function: initializeAutoMode().
 - new constant: SOLENOID_TIMES_SIZE,
 - Renamed VALUE_TIMER_NULL to VALUE_TIME_NULL.
 - Reviewed the DEBUG_MODE output.
* Reseting the time stamp at the end of PUSH_BRICK stage.
Updating the TODO-list.
* New array: testModeFlags.
* Renaming CALIBRATE_SOLENOIDS with AUTOMODE_CALIBRATION.
* New function: InitializeTestModeFlags().
* New function: getSolenoidId().
* Replaced the flags[] with chronoIsRunning and flagHighPressure.
* Replaced AUTO_MODE_TIMESTAMP with timestamp.
* New group of variables, chrono.
* New function: isSolenoidTimesCalibrated().
* New function: getReleasePressureTime().
* New function, measureCylinderTravelUntilHighPressure().
* New function, showErrorMessage().
Fixup.
Apply chrono functions.