Simplify build target by GNU make macro.
Enable all warning and turn warning into error.
Remove unused variables.
Fix implicit declarations of function.
Fix array subscript has type 'char'.
Fix -Werror=return-type of 'write_blank' by return void.
Move string function to single file.
Split task function to single file.