Add multiplication function.

Later we will replace the timeout override with a timeout multiplier.

Arithmetic taken from this amazing article by John Graham-Cumming:
http://www.cmcrossroads.com/article/learning-gnu-make-functions-arithmetic
Rename the in-file TIMEOUT variable to CALL_TIMEOUT.

In a later fix, the environment variable TIMEOUT will be needed, so this
will prevent a name collision.
Call to test evaluation is now verbose.
Changed the test header text to allow for better 0-sec timeout.
Replaced timeout override with timeout multiplier.

Instead of using testname_TIMEOUT=n to override, the user can use
testname_TIMEOUT_MULT=n to multiply the DEFAULT_TIMEOUT variable by
n for a timeout for a specific test.

This is better because overrides may break compilation on computer with
different speeds. Because of this, in a later patch, there will be no
in-file DEFAULT_TIMEOUT, but will be imported from the TIMEOUT shell
environment, so that each user sets a base timeout depending on his own
computer.
Changed defaults for timeout.

* Timeout is now set from the shell by exporting the TIMEOUT variable.
* There is no more in-file DEFAULT_TIMEOUT anymore.
* Timeout is now defaults to 0.

This way, users can opt-in for infinite loop breaking only if they
want by simply exporting their TIMEOUT environment variable with a value
in seconds.

It is better to have timeouts disabled because a suitable default value
is very difficult to nail down, and thus, it can break tests on lower-end
devices. Now each user opts-in and with the value they want.