initial implementation of FirmConfigSource
ConfigSource: Implement line/stream parsing in base class to reduce code duplication
FileConfigSource: use base class parsing routines
FirmConfigSource: use base class methods
Makefile: keep default configuration in flash, do not load into ram at runtime
Merge remote-tracking branch 'upstream/edge' into firmconfig
TemperatureControl: support 2 preset temperatures, activate with M104 S1, M190 S2 or similar
SlowTicker: G4 pause now also acceps S<seconds> in addition to P<milliseconds>
use on_second_tick for reset timeout as smoothie board doesn't have a crysal on its RTC
PauseButton: eliminate potential race condition
New LED behaviour: off = not paused, not running. flash = paused. on = executing blocks. Implemented with new PlayLed module
Pauser: add method bool paused()
PlayLed: light off at boot
PlayLed: use Pauser::paused() instead of referencing PauseButton.

PauseButton: no longer need static self-reference
Use on_second_tick for progress est and elapzed time as RTC doesn;t work on smoothieboard
USBSerial: remove special handling of \r
Merge remote-tracking branch 'upstream/edge' into feature/add-est-to-progress
Don't display ETA for first 10 seconds
don't accumulate time if paused
Merge pull request #145 from wolfmanjm/feature/add-reset

use on_second_tick for reset timeout as smoothie board doesn't have a cr...
Merge pull request #146 from wolfmanjm/feature/add-est-to-progress

Use on_second_tick for progress est and elapzed time as RTC doesn;t work...
Merge branch 'edge' into local-firmconfig