Prefix err() messages with "ERROR:" too.
Adds forwards declarations in headers and includes all headers in sources, even if they are found by transitive includes.