Compile with -ffunction-sections -fdata-sections

So that we can garbage collect unused sections at link time with
--gc-sections for even smaller elf/binary files.

At the same time, group the CFLAGS lines together insted of having them
span across the CC and AR setting.