Changed directory names.
Updated CMakeLists.txt file according to new directory structure.
Small clean ups.
Fixed a few bugs regards to the way file extensions were checked.
CPUs are smart enough to guess code path these days, so there isn't any need to compiler specific hacks.