improve the descriptions of FIFO

Fixes #5
Fix wrong memory layout setting.
Merge remote-tracking branch 'f9-upstream/master'
ktimer_event_handler: remove dead code
Reduce compiler optimization to avoid runtime crash

gcc -O1 is known to cause Memory fault. At present, we disable
optimizations as workaround.
revise memory layout for ARM Cortex-M
add missing copyright notice
introduce Linux kernel style build system

The functionality is described as following:

* Makefile.toolchain:
  toolchain-specific configurations; common cflags and ldflags

* platform/build.mk:
  platform-specific configurations; cflags/ldflags for CPU and FPU

* board/*/build.mk:
  board-specific configurations; CHIP model, periperals

* rules.mk:
  the magic of build system
update copyright info
rules.mk: fix typo
rules.mk: clean up unused target
concrete board implementation

Fixes #8
Remove float in usart_baud and work around in irq_save.

When using float point in compile option,
lr value would be strange(0xffffffe9) in IRQ_HANDLER
and we need to save ctx's lr in lr in irq_save to
correct it.
descrive Characteristics of F9 Microkernel in brief
README: add 'Quick Start' and 'Build Configuration' sections

Fixes #6
thread: fix reference citation
README: update the characteristics list
move linker script to directory platform
rules: don't hardcode libgcc
f9.ld: remove trailing whilespace