standard gcc compile/link successful. not tested.

To make it compile I had to split some files into two - to separate the generic interface form the arduino-specific implementation.
linking now working again

added millisecond timer support and WIP on Serial.
fixed linker problem - the asm block in PiLink caused intermittent assertions in the linker. (many hours wasted finding this...)
asynchronous file I/O (currently Windows only.)
Merge branch 'develop' of https://github.com/BrewPi/brewpi-avr into develop
eeprom loaded/saved to file brewpi-avr.exe.eeprom
will later add command line params to specify load/save file

The existing arduino eeprom access code is moved from EepromAccess.h to ArduinoEepromAccess.h to avoid collisions with header file names.
Added NullLcdDriver to replace NullDisplay. This allows the display to still be buffered even though there is no actual hardware.
Fixed some method overloading in Print.h - write(uint8_t c) is the base method for output.
enable/disable flag on simulator
Alarm command - A
alarm now done asynchronously
Merge branch 'develop' of https://github.com/BrewPi/brewpi-avr into develop

Conflicts:
	brewpi_avr/Actuator.h - code moved to ActuatorArduinoPin.h
	brewpi_avr/TempControl.cpp - conflict over INT_MIN vs MIN_TEMP
renamed MIN_TEMP to INVALID_TEMP
Use eeprom update function for writing a single byte too.
Make beep the first thing at boot. This is more useful for debugging: you know when the bootloader stops and brewpi starts.
fixed deafult config - #endif in wrong place, so some settings were being ignored. Changed comments referring to ConfigLocal.h to Config.h.
HMS time elapsed display (untested)
fixed deafult config - #endif in wrong place, so some settings were being ignored. Changed comments referring to ConfigLocal.h to Config.h.
HMS time elapsed display (untested)
New lcd status messages (shorter to make room for 00h00m00 time format and reduced code size):
"Waiting to cool/heat"  -> "Wait to Cool/Heat"
"Idle for" -> "Idling for"
"Cooling/Heating min time" -> "Cool/Heat time left"
"Awaiting peak detect" -> "Waiting for peak"
The time is now always printed at the end of the line. This change code size by 28 bytes in total

The hours are printed only when not 0 (costs 14 bytes).

New sizes:
RevA Leonardo: 28528 (hms) or 28432 (s)
RevC Leonardo: 28234 (hms) or 28432 (s)
RevC Uno: 25814 (hms) or 28138 (s)
Even more moderate PID parameter defaults. Oscillations are worse that slow controllers.
Version bump to 0.2.3
Merge branch 'release/0.2.3'
Merge branch 'develop' of https://github.com/BrewPi/brewpi-avr into develop

TempControl.cpp is flagged as in conflict but I didn't see any in the conflict viewer. Might be worth a closer look

Conflicts:
	brewpi_avr/Actuator.h
	brewpi_avr/DisplayLcd.cpp
	brewpi_avr/EepromManager.h
	brewpi_avr/TempControl.cpp