pkg/oonf_api: fix conflicting types on msba2
unittests: core: add test_bitarithm_[ml]sb_all
Add test_ipc_pingpong
Add bitarithm measuring
core: faster bitarithm_msb
x86: slightly better debuggable bincode

While tracking down an error in #1253 I ameded newlib a bit to be
slightly better debuggable. Some lengthy macros were removed in favor of
proper functions.

The parameter passing was wrong before (because of a bug in newlib),
because the user provided CFLAGS were overwritten in the subfolders.
It is kinda strange that this did not cause errors.

The standalone version of the toolchain script was deleted, because it
is not reasonable to maintain two scripts.
x86: Use 'versioning' for precompiled newlib
core: remove unnecessary tests in sched.c

The scheduling gets activated by `kernel_init()` calling
`cpu_switch_context_exit()`. Before this `sched_run()` won't be called.
When it gets called, at least the main thread and the idle thread are
spawned. The idle thread won't die / get killed. So there always is at
least one thread in `runqueue_bitcache`.

Closes #19.
native: use `real_pipe()` and `read_close()`
dist/tools: add license checker

Creates file structure that maps files to licenses by grepping for
license patterns (patterns for licenses found in RIOT included).
Sets exit code to 1 if an unknown license header is detected.
Merge pull request #1181 from LudwigOrtmann/licenses

license checker
make: detect their module name automatically

For many modules the `Makefile` contains a line like
```
MODULE:=$(shell basename $(CURDIR))
```
This conclusively shows that we do not have to set the module name
manually.

This PR removes the need to set the module name manually, if it is the
same as the basename. E.g. for `…/sys/vtimer/Makefile` the variable
make `MODULE` will still be `vtimer`, because it is the basename of the
Makefile.
make: easifier usage of module subdirectories

Many modules have subdirectories. Often these subdirectories should only
be included under certain circumstances. Modules that use submodules
currently need to use this pattern:

```make
DIRS = …

all: $(BINDIR)$(MODULE).a
   @for i in $(DIRS) ; do $(MAKE) -C $$i ; done ;

include $(RIOTBASE)/Makefile.base

clean::
   @for i in $(DIRS) ; do $(MAKE) -C $$i clean ; done ;
```

This PR moves the `all:` and `clean::` boilerplate into `Makefile.base`.
Merge pull request #1210 from benpicco/fix_oonf_msba2

pkg/oonf_api: fix conflicting types on msba2
Merge pull request #975 from Kijewski/issue-974

core: change in bitarithm implementation
Merge pull request #1322 from Kijewski/native-pipe-and-close

native: use `real_pipe()` and `read_close()`
cpu - cortex-m3: moved crash.c to cortex-m3_common
Merge pull request #1327 from haukepetersen/fix_cortexm3_crash

cpu - cortex-m3: moved crash.c to cortex-m3_common
Merge pull request #1306 from Kijewski/issue-19

core: remove unnecessary tests in sched.c
tests: fixed Makefile for test_ipc_pingpong