uname -o fixes and allow AVR_ROOT and AVR_INC overrides

Hi:

These changes hopefully address your uname -o problem. Basically, the change to the Makefiles changes:

    WIN := ${shell uname -o}

to 

    WIN := ${shell uname -o 2>/dev/null ; if [ $$? -ne 0 ] ; then uname -s; fi}

etc.

I also propose a change here:

    AVR_ROOT        := "/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/"
    AVR_INC         := ${AVR_ROOT}/avr-4/ 

to

    AVR_ROOT        ?= "/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/"
    AVR_INC         ?= ${AVR_ROOT}/avr-4/ 

This allows me to set AVR_ROOT and AVR_INC in the .make.options file without modifying your Makefile.common file. With the := operator, my changes were always overridden. Perhaps a note about the well kept secret .make.options file would also be helpful :)

These settings are working for me on a Mac Yosemite:

    $ cat .make.options
    V = 0
    CFLAGS		+= -I/usr/include -I/opt/local/include -I/opt/local/include/libelf
    CFLAGS		+= -Wno-deprecated
    AVR_ROOT	= /usr/local/CrossPack-AVR
    AVR_INC		= ${AVR_ROOT}/avr

There remains one unresolved problem however, with the compile of cores/sim_mega324.c.  The include file "avr/iom324.h has now been split into three files:

    - avr/iom324a.h
    - avr/iom324p.h
    - avr/iom324pa.h

It looks to me at first blush that sim_mega324.c should be split into three versions but I am not yet familiar enough with this project to make that determination.

Thanks, Warren  ve3wwg@gmail.com