prevent rounding 0 if HWTIMER_SPEED > 1000000L

The current macros in hwtimer.h expect HWTIMER_SPEED to be < 1000000L, otherwise integer arithmetic will round the result down to 0.
Add a case to prevent that.
net: move ping to sys/net

* moved the former ping module from `sys` to `sys/net/link_layer` and renamed to l2_ping
* use defaulttransceiver instead of cc110x
* some refactoring
net: l2_ping uses radio_packet_t instead of packet_info_t
tests: extend cib unittest
core: inline `cib.c`

The functions in `cib.h` are only used in `msg.c`. They are very small,
and proper function calls have a bigger overhead than inlining these
functions.

The difference in .text size (worst to best):

```
+104 native
+69  qemu-i386
+32  mbed_lpc1768
+28  samr21-xpro

-54  chronos
-54  z1
-56  iot-lab_M3
-56  msb-430
-56  msb-430h
-56  msba2
-56  openmote
-56  spark-core
-56  telosb
-56  wsn430-v1_3b
-56  wsn430-v1_4
-58  arduino-mega2560
-60  airfy-beacon
-60  arduino-due
-60  f4vi1
-60  msbiot
-60  pca10000
-60  pca10005
-60  stm32f0discovery
-60  stm32f3discovery
-60  stm32f4discovery
-60  udoo
-60  yunjia-nrf51822
-72  avsextrem
-72  pttu
-120 redbee-econotag
```
C++ -_-
ieee802154: introduce constant for default PAN id
make: allow tagged RIOT_VERSION
cpu/cc2538: added extern C for rfcore.h
unittests: test full 16 bit range for bitarithm

Also uses a better pseudo random number.
Revert "core: faster bitarithm_msb"

This reverts commit ed7e233876239e5a6815150c33fb74215069f829.
core: cib size must not exceed MAXINT/2
test/hwtimer_spin: test slightly wider range

test is now also testing for values slightly above SPIN_BARRIER
dist: run cppcheck with only one job (triage #2089)
Merge pull request #2099 from haukepetersen/fix_test_hwtimerspin

test/hwtimer_spin: test slightly wider range
Merge pull request #2101 from N8Fear/cppcheck-triage

dist: run cppcheck with only one job (triage #2089)
Add the AODVv2 Routing Protocol

This PR depends on #1766.

It contains a minimal implementation of the AODVv2 routing protocol.
*Not* implemented are:

	- AckReqs
	- alternate metrics
	- multiple interfaces
	- clients and Client Networks
	- buffering
	- all addresses, TLVs, and features that are marked as optional

An example application can be found at https://github.com/Lotterleben/RIOT-AODVv2/tree/master/aodvv2_demo.

The implementation relies heavily on a functioning Neighbor Discovery Protocol.
It might be necessary to fill the neighbor cache manually with the current state
of RIOTs NDP implementation.

The value of AODVV2_MAX_UNREACHABLE_NODES has been chosen arbitrarily and will be subject to
future improvement.

Please note that based on my experience, with the default transceiver
buffer size (3) of the native port, about 2/3 of the route discoveries
will fail. This has been addressed in issue #1747. It is advised to increase
the transceiver buffer size when using AODVv2 as a routing protocol.
Merge pull request #2094 from OlegHahm/fix_bitarithm

core: Fix bitarithm and unittests
tools: added pcap script for sniffing radio

To use in combination with
https://github.com/RIOT-OS/applications/tree/master/sniffer
Merge pull request #885 from OlegHahm/sniffer_applicatoin

examples: net: Sniffer application