SettingsAccessor: Make version constant projectexplorer unspecific

Add a version upgrader to handle/document the changes.

Throw in some more key-changes while at it;-)

Change-Id: I1b2f9bd2ddbf89c11637d061cdf151fe61c95a75
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
SettingsAccessor: Keep upgraders in a list instead of a map

This also removes the need to store m_firstVersion and m_lastVersion.
Add some convenience functions for that.

The bool return value from addVersionUpgrader is never used in the
unit tests.

Change-Id: I2f372ef7353b72a0c577b429f725277d2c579872
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
SettingsAccessorPrivate::bestSettings: Use Utils::FileName

also remove the const from that method.

Change-Id: I5df052d39595eac885e1dbdafd50ccec3e850ca8
Reviewed-by: Daniel Teske <daniel.teske@digia.com>