Flash pulsing timing behaviours

Pulse speed will either be fast or slow. Fast for ‘this counts towards
the goal’, slow for when light is not bright enough’.
Refactor and remove index to allow smooth function between 2.5K and 10K.

Needed an extra variable for calculations so had to factor out index.
Some small timing adjustments to the pulse effect and reading RGBW
sensors on button press to decide what speed to pulse the UI goal
feedback.
Fix data transfer and speed it up.

Using 4 was a poor choice, needed to be a multiple of 6 to send all
data correctly.
Tidy comments
Move order of low speed on first boot
Downloads and convert data from a Light Log <http://lightlogproject.org>

Raw data bytes are downloaded from a Light Log device through a serial
port and saved as a CSV file for easy processing with external tools.
Time stamps use calculations based on the local systems time, so be
aware your local clock should be reasonable accurate when downloading.
Comment correction
Spend less time allowing MCU program downloads.
Tidy up LED pulsing and MCU speed
Comment editing
Extend linear lux interpolation data points
Remove unnecessary text message.
Merge branch 'new_features'