First working state of base class free and type-safe API.
Added a service factory test and fixed a few related bugs.
Merge branch 'master' into type-safe-base-object-free-api

Conflicts:
	CMake/usFunctionCreateTestModule.cmake
	CMakeLists.txt
	documentation/doxygen/standalone/BuildInstructions.md
	examples/dictionaryservice/Activator.cpp
	src/service/usServiceTracker.tpp
	test/modules/CMakeLists.txt
	test/usModuleTest.cpp
	test/usStaticModuleTest.cpp
Import TestModuleH for static unit tests.
Reworked the RegisterService() methods for easier usage.
Implemented service scopes from RFC 195.
Added documentation for utility classes and functions.
Added more documentation for API version 2.
Fixed unit tests for static build mode.
Added variable for disabling the documentation.

When building the library within a larger project, the "doc" target
might clash with the larger project's doc target.
Removed all remaining traces of US_BASECLASS_NAME.
Fixed small doc and code style issues.
Fixed CreateServiceProperties call by passing the id correctly.
Enhanced the service API to return a InterfaceMap.

If "void" is used as the interface type in ServiceReference instances,
the return type of GetService(...) is now InterfaceMap instead of void*.
Removed ostream& operator<<(ostream&,const Any&) from API.

Because of the non-explicit Any template constructor, the << operator
overload took part in overload resolutions, leading to calls with
Any<T> instances for which there was no suitable any_value_to_string<T>
template specialization, leading to infinite function calls in some
cases. Just use ostream << any.ToString() instead.
Warn if usFunctionGenerateModuleInit() is used for executables.
Check length before calling std::equal().

The std::equal function of MSVC9 failes if the second container's range is shorter than the first container's range.
Check for length first!
Removed trailing white space.
Removed trailing white space
Removed trailing white space