build: Reviving support for precompiled headers

This commit also includes an update of ./waf, which has several
improvements.  In particular, clang++ is now default compiler on OSX
platform.

This commit also includes reorganization of tests. All unit tests are
now under tests/unit-tests and integrated tests are under
tests/integrated.  This change allows small compilation optimization,
partially related to precompiled headers.

Change-Id: I4c171c04d18e9cb83e461264a35b9ed85ea4d50e
diff --git a/.gitignore b/.gitignore
index 21772b9..fc3231c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,7 +2,7 @@
 *~
 
 # Mac OSX
-.DS_Store
+.DS_*
 
 # waf build system
 .waf-1*