Completes config_template.mk for library headers
Implements prunes_doubles function to removes doubles from a variables
mv extensions/libheader.* -> extensions/bin_libheader.*
Adds prefixes 'bin_' on C/C++ and assembly extensions
mv external_project_libheader.main_config_pre.mk -> bin_farincludes.main_config_pre.mk
Implements product_project_dir function geting a product's project directory
Lets extensions be able to add code when creating or importing a product
Implements product_c_cpp_rec_include_dirs function to recursively add all C/C++ inclusion directories
Removes old C/C++ include directories mechanism
Uses product_c_cpp_rec_include_dirs instead of project_build_include_dir in config_template.mk
Adds the product type BINHEADERS
Fixes a bug in bin_header_deps when g++ inserts '\' in the output
Lets BINEXEC compile only .c .cpp .s .o and .a files
Adds the constant test_apis_dir defining the test APIs' directory
Implements test_str() in test_apis/mk_test.h
Renames test_condition() to test_assert() in test_apis/mk_test.h
Lets test_failed() print the file and the line in test_apis/mk_test.h
Prints failed tests in red
Does not let bin_header_deps function write on the standart error output
Implements 'make show/targets'