kernel: move CONFIG_SMALLEST_FPAGE_SIZE back to implementation
mk: migrate to Kconfig completely

Configuration file include/config.h is now deprecated.
Documentation: improve syntax
mk: reduce image size by eliminating hidden functions

The whole hidden functions can be garbage collected if unused locally,
and here is the comparison about image size:

[before]
  f9.bin: 59672 bytes
[after]
  f9.bin: 59092 bytes

Toolchain options:
  -ffunction-sections,
  -Wl,--gcsections,
irq: use PendSV to avoid disabling irq in context-switch