Register configure variables with VAR_SILENT in plain mode

This allows require_variables to work properly.
Make config.mk name compulsory for now
Attempt at outputting plain .c.obj rules (not well-tested)
Further condensing rule template for .c.o
Further compression of template

Parent commit was buggy - there's no good way to disable a compound shell
command (e.g. with ; or &&) at configure time. Putting # inside a make
variable is impossible. The other way would be to have TWO make variables,
one containing "@: ", the other ": ".

Here we calculate depbase twice for the sake of less repetition in the
template.
Avoid setting depbase twice by using "@: || " to cancel lines
$(AM_V_at) = "@" has to appear first in the line
Better comment about %source-search%
Attempt at shortening .c.obj rule template