user: initial migration to libl4
platform: apply cflags += -mno-sched-prolog -mno-unaligned-access

From GCC manual,

-mno-sched-prolog
  Prevent the reordering of instructions in the function prologue, or the
  merging of those instruction with the instructions in the function's
  body.  This means that all functions start with a recognizable set of
  instructions (or in fact one of a choice from a small set of different
  function prologues), and this information can be used to locate the
  start of functions inside an executable piece of code.

-mno-unaligned-access
  Disables reading and writing of 16- and 32- bit values from addresses
  that are not 16- or 32- bit aligned.
include: fix KProbes function prototypes
Fixes r4 corruption in schdule_irq while gcc "-O0"

Fixes #31
apply strict compilation flags and fix function prototypes

Several functions in server/ were not specifying an argument list,
ie they were declared as void foo(); When compiling with -Wstrict-prototypes,
this leads to:
  platform/stm32f4/rcc.c:19:6: error: function declaration isn't a prototype
Merge pull request #35 from arcbbb/master

fixes issue #31
Makefile: scan mk/rules instead of hard-code

Fixes #33
Makefile: improve parsing for include/config.h

Fixes #34
kconfig: fork mconf source from olibc

Added from commit 424a2e4 of https://github.com/olibc/kconfig
with the following commit reverted

-----------------------------------------------------------
commit e9eb3dd3b239ea10ed34cc8566ebb5bb5b37f8d0
Author: Kito Cheng <kito@0xlab.org>
Date:   Tue Jun 11 22:56:50 2013 +0800

    Output boolean value '=true' instead of '=y'
-----------------------------------------------------------
kconfig: fix naming from olibc to F9 microkernel
mk: add kconfig support

new makefile target:
  1. config: parse Kconfig and introduce config menu
  2. distclean: clean project, then clean config files
kconfig: naming tweaks
variable name tweaks
rename external
kconfig: rename environment variables
kconfig: add CONFIG_ head back
kconfig: generate c header for kconfig

1. Generate autoconf in the end of mconf
2. Generate header file only. Remove .config.cmd, auto.conf
   and tristate.conf from generating list.
3. Change the path of autoconf.h to include/
kconfig: transparent integration with current build system
introduce Kconfig style configuration for build system

Fixes #14
mk: attempt to interpret each configuration regardless of its form

Revert commit f321695a8ed6573679f79bfe751668034f900f0b