gcode_parse.c: process incoming digits earlier.

Idea and patch from ItsDrone, see
http://forums.reprap.org/read.php?146,174364,174550#msg-174550

Thanks, ItsDrone.
Replace #define HOST by #define MOTHERBOARD.

Apparently, HOST conflicts with some AVR headers for the
USB-equipped ATmegas.

Patch by DaveX, thank you Dave. See also:
http://forums.reprap.org/read.php?147,33082,182021#msg-182021
arduino.h: add the AT90USB1286.

Thanks for the patch, DaveX.
usb_serial.c: make variables residing in PROGMEM constant.

Newer avr-gccs complain about that and even without this, it's
the right thing to do.

Patch by DaveX, thanks Dave. See also:
http://forums.reprap.org/read.php?147,33082,182021#msg-182021
Makefile-AVR: fix ...

... well, I've forgotten what this fixed, but it was neccessary
at some point.
Add support for the AT90USB1286.

Contribution by DaveX. Thank you very much, Dave. See
http://forums.reprap.org/read.php?147,33082,182206#msg-182206
Clean up some unused delay related stuff.
Eliminate _delay_ms().

Lots of duplicate stuff in delay.c/.h ...
Eliminate _delay(), delay() and _delay_us().

Doesn't change much, even the binary size stays the same. Much
cleaner code though, now we have only delay_us() and delay_ms().
delay.h: re-add falsely removed #include.
Add Cyberwizzards lookahead. Thanks a lot, Cyberwizzard.

For now only the two new files, tweaked a bit in the #ifdef
area to let them compile without LOOKAHEAD being defined.
Make lookahead basically working.

This means, modify existing code to let the lookahead algorithms
do their work. It also means to remove some unused code in
dda_lookahead.c and reordering some code to make it work with
LOOKAHEAD undefined.
Bring LOOKAHEAD into the config templates.
usb_serial.c: eliminate type punning compiler warnings
temp.c: DEBUG_USER code for raw temp readings.
Remove M84.

Teacup handles motor on/off automatically and if your
intention is to stop the printer, M0 is appropriate (and
conforming with the NIST G-code standard).

That said, M84 is kept as a synonym for M2 to enhance compatibility
with slic3rs default end-G-code.
Rename M200 to M119 to meet Sprinter & Marlin.

No functional change.
Move the branch input-float into an attic.

This was a very interesting approach, but for the forseeable
future it's unlikely the code will replace the current one.
Introduce ATOMIC_START and ATOMIC_END.

As a sample application, use it in queue_empty().

There's also ATOMIC_BLOCK() coming with avr-libc, but this requires
a C99 compiler while Arduino IDE insists on running avr-gcc in C89 mode.
Apply ATOMIC macros in a number of other obvious places.