Added AVR32 network support, please note here is a issue with -Os optimisation, fix it before git pull
resolved the -Os issue
Lua build system improvements and bug fixes

- specify -Dmacro on the builder command line to automatically include the macro in the compiler command line
- refactoring: option handling code now moved to utils/utils.lua
- various small bugfixes
Integrated Martin Guy's emBLOD bootloader patch in eLua. Original patch message:

emBLOD is Marcus Jansson's second-stage boot loader for AVR32UC3A
parts as used in the EVK1100 and Mizar32 boards, designed to allow
firmware images larger than the on-chip flash memory by loading the
eLua binary from SD card into SDRAM and executing it there.

The source for the emBLOD loader is here https://github.com/cmp1084/emBLOD

When compilation option  bootloader=emblod is given to scons, a special
version is compiled that
- locates the program at the start of SDRAM
- doesn't initialize the system clocks and SDRAM controller, as these
are already set up by emBLOD.

If the bootloader= option is not given, eLua is compiled exactly as before.

The changes I've made to Marcus' originally posted patches are to put
DATA and BSS in internal static RAM, the same as before, since in the
best case (memcpy) the SDRAM is three times slower than access to
static RAM
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=80657

This also has an impact on code speed: the interpreter runs 9 times
slower in external SDRAM than it does in internal flash.

Tested and working on Mizar32
Fix typos in I2C documentation
Make build-elua.lua also a directly executable script (#! ...)
Add minimal documentation at the head of build_elua.lua
saying how to install dependencies and where to find out the
command-line flags
Fix typo in i2c doc: u23 -> u32
Fix two typos in refman_gen_cpu doc
Fix typos in pio refman doc
Comment rationale behind Mizar32 pull-up resistor code on UART0 RX pin
and make it happen before the UART (interrupt) is initialized.
Avoid compiler warning about adc_int_handler() when NUM_ADC == 0
Revert "Avoid compiler warning about adc_int_handler() when NUM_ADC == 0"

This reverts commit d0eae8c43349e422a306d8b51fd10c531d359964.
Avoid compiler warning about adc_int_handler() when NUM_ADC == 0
EVK1100 has two UARTS, not four.  USARTs 2 and 3 are used for SPI, and calling
uart.setup() on them can crash the board.
Omit AVR32 UART pin definitions for UARTS 3 and 4 when NUM_UART <= 2
(which is the usual case)
Fix defines so that inclusion of ADC code is controlled by BUILD_ADC
(previously, if NUM_ADC>0 but !BUILD_ADC, compilation failed with
unresolved symbols)
Prepare Mizar32 platform conf for support of ADC module (disabled by default)
Fix typos in documentation
When the UART gets a receive error, clear the error flag to avoid infinite
repetition of the error state.