use GNUInstallDirs and make paths modifiable

hardcoded "lib" will break compatibility with libsuffix such as lib64/lib32
GNUInstallDirs provides convenience to handle this, but raises minimum
cmake version to 2.8.5
SAMPLES_DIR should also be modifiable
Merge pull request #78 from viciious/optimizations_p1

Part1 of various optimizations
Merge pull request #77 from hasufell/master

build system: respect paths
Merge remote-tracking branch 'remotes/upstream/master'
Property::Unity::IN -> INCH to prevent conflict with windows defined macro