native profiling support

only works with Linux for now
change target name, add cachegrind target
rebase_fixup
make: streamline native targets

The new target names are easier to remember / decipher:

term
term-cachegrind
term-gprof
term-valgrind

all
all-cachegrind
all-gprof
all-valgrind
all-debug

eval-gprof
eval-cachegrind
add variables for gprof, cg_annotate
msp430: remove expensive modulo call
msp430: show overflow counter in hwtimer debug
msp430: cc430: handle hwtimer interrupts correctly

TAIFG should count the overflows, instead of using the first CCR for this purpose.
Without this commit ARCH_MAXTIMERS returns the wrong number as
effectively one timer less can be used.

Additional fixed comment style and added timer debug.
test_hwtimer: hwtimer is automatically initialized now
msp430: don't enable Timer 0 by default
Initial import of low-level PWM driver interface
Fixed spelling
drivers: small fixes for low-level pwm driver IF

- added UNDEFINED device for compatability
- adjusted meaning of return values for init and set functions
- overdue spell fix
Make neighbor cache remove function public
ccnl: remove dead code
Update README.md
Add include paths automatocally for USEMODULES

Application developers use `$(USEMODULES)` in their Makefiles to have
the relevant functionally automagically added to their apps. This even
does basic dependency tracking by means of `Makefile.dep`.

But an important thing is missing: the automatic adding of include
paths. This is inconvenient, error prone, and will hinder the RIOT core
developers in future to change folder structures.
Merge pull request #937 from mehlis/ccnl-dead-code

ccnl: remove dead code
Merge pull request #941 from LudwigOrtmann/native_invocation

Update README.md
Merge pull request #615 from haukepetersen/periph_driver_pwm

Initial import of low-level PWM driver interface