shell: fix newlines
x86: add read-before-write check at runtime

Finding read-before-writes statically is quite difficult. In native we
can use valgrind, but on boards without an MMU we are out of luck.

x86 has an MMU, let's use it.

If `-DDEBUG_READ_BEFORE_WRITE` was set, then pages on the heap get
initialized upon first use. If the page was read before written, then a
debug message with the virtual and physical address of the memory
location is printed, as well as the address of the offending instruction.
drivers: added rgbled driver
x86: add proper terminal for qemu-i386

This includes GNU readline features and debugging.

Build with `make BOARD=qemu-i386 all-debug`.
Run with `make BOARD=qemu-i386 term`.

Debug with `make BOARD=qemu-i386 debug`. The default debugger is `gdb`.
Also supported are `debug-tui` (GDB Text User Interface), `debug-kdbg`,
and `debug-ddd`. Set a breakpoint in e.g. "startup" or "main", and
hit/write "continue".

The debugger can only run with a quite new toolchain (e.g. Debian
testing). Ubuntu 13.10. for example will likely report a crash in GDB
when switching from 16bit code to 32bit code.
x86: garbage collect section if not debugging
Merge pull request #1257 from Kijewski/shell-fix-newline

shell: fix newlines
Merge pull request #1259 from Kijewski/x86-heap-check

x86: add read-before-write check at runtime
Merge pull request #1316 from haukepetersen/add_driver_rgbled

drivers: added rgbled driver
pyterm: Make pyterm available in python2 and python3
Merge pull request #1258 from Kijewski/x86-term

x86: add proper terminal for qemu-i386
x86: fix up `make term` for x86

When qemu-i386 shuts down the instance on its own accord, like in the
hello-world example, then the terminal is broken afterwards.

This PR ensures that the terminal flags are restored on shutdown.
Merge pull request #1236 from authmillenon/pyterm-six

pyterm: make it usable with python 2 and 3
Merge pull request #1343 from Kijewski/fixup-1258

x86: fix up `make term` for x86
shell: added command to print all ignored addresses
Merge pull request #1337 from OlegHahm/print_ignore

shell: added command to print all ignored addresses
destiny: set ack bit for (almost) all segments after syn
The current implementation does not set the ack bit
for outgoing data segments and the fin segment.

However, RFC793 states that all segments
should have an ack bit set in order to present a valid
ack nr. in outgoing segments.

Currently, data segments and acknowledgement segments
are distinguished by the existence of their ack bit.
With the new assumption, that both of these types of
segments need an ack bit set, I had to change several
parts of the current implementation to make this
decision by inspecting the payload size.

destiny: added parens
Merge pull request #1321 from cgundogan/fix_missing_ack_bit

destiny: set ack bit for (almost) all segments after syn
Initial commit of Arduino Mega2560
strip functions in atmega2560/periph and atmega_common/thread_arch.c down to prototypes

Add custom errno.h since avr-libc doesn't include one
rename board_init to main, main to o_main (inside hello-world/main.c). Fix
Makefile.include:

UART works within RIOT codebase, :)