Port handling of include paths to Path API.

This greatly reduces the amount of conversions required and thus
speeds up parsing a lot.
Port CMake::resolveSystemDirs to Path API.

This is called often and let to frequent KUrl to Path conversions.
Cache to local path
Get rid of auto_ptr here as well and also fix a memory leak while at it...
codegen: Simplified the SimpleRefactoring class.

REVIEW: 115204
Fix regression in include path computation.

I failed to cache the local path properly...
Query build manager for include paths even when no target is found.

This fixes some include path computation regressions and also helps
for the case of header-only projects.
Fix dependencies computation

Don't compute the dependencies with target_link_libraries, instead use
INTERFACE_LINK_LIBRARIES when building the project model.
fix the weird scrolling of the welcome page

Aleix fixed it on my computer and now I need to commit it.
Use the property system to pass dependencies
Support setting visibility without LINK_*

According to the documentation they are the same and LINK_ is actually
not recommended.
Fix regression: When everything fails, try to get old include paths.

System headers or 3rdparty library headers are not part of any project
and thus all other mechanisms to find include paths for these files
fail. Thus it is very important to keep the fallback mechanism which
looks for include paths of an old parsed version of the file.
This way, we at least get some include paths for such files instead
of none at all which breaks many things in funny ways.
Fix includes/compile
Make it possible to build without tests

This is still ON by default, though. See
http://marc.info/?l=kde-commits&m=134980086725078
Adapt to KDevplatform::Problem persistency changes.

Note that finalLocation of a problem must be called only while holding
the ForegroundLock. In the case at hand, the range() method is enough.

Furthermore, while this persists the MissingIncludePathProblem, its
solution assistant is not yet persisted.
Default-construct the indexed type.
Replace the hardcoded plugin version
Merge remote-tracking branch 'origin/master' into frameworks

Conflicts:
	CMakeLists.txt
	languages/cpp/codecompletion/item.cpp
	languages/cpp/codegen/simplerefactoring.cpp
	languages/cpp/cpputils.cpp
Make KF5 Plasma dependency optional

Why?
a) Just because we can
b) It's currently a hassle to build Plasma/KActivies
Make compile