Unity build

If the two translation units are merged into a single source file jumbo_file.cc then header.h will be processed only once (thanks to include guards) when compiling jumbo_file.cc.

[1] The main benefit of unity builds is a reduction of duplicated effort in parsing and compiling the content of headers that are included in more than one source file.

The content of headers usually accounts for the majority of code in a source file after preprocessing.

They make it also easier to detect violations of the One Definition Rule, because if a symbol is defined twice in different source files in the same unity build, the compiler will be able to identify the redefinition and emit a warning or error.

Larger translation units can also negatively affect parallel builds, since a small number of large compile jobs is generally harder or impossible to schedule to saturate all available parallel computing resources effectively.