Improved documentation, made some refactoring

- DELAY_MICROS has been renamed LED_ON_DELAY_MICROS
Added timing correction support

Each incrementation of seconds must lead to a clock advance of a few
milliseconds per hour (can be defined empirically by letting the clock
run for a dozen of hours). Time is fixed each hour by waiting this
amount of milliseconds.

- MILLIS_THRESHOLD has been renamed SECOND_THRESHOLD_MILLIS
- ADVANCE_PER_HOUR_MILLIS has been defined to set clock shifting
- incrementHours() has been updated to take clock shifting into account
Made some refactoring, synchronized .ino with .cpp updated

- defined LED amount as a constant (LED_AMOUNT)
- defined the delay during which each LED is lit during self-test as a
constant (SELF_TEST_LED_ON_DELAY_MILLIS)
- extracted powerOn test code to a function (PowerOnLEDsTest)
- renamed resetAllLEDS to resetAllLEDs