add missing const qualifiers to MemoryDataLayer ExactNum* functions
move CUDA 6.0 check into switch statement itself

This allows -Wswitch to be turned on so that the compiler can check
exhaustiveness.
initialize and comment variables that the compiler finds suspicious
don't end comments with \, so that -Wcomment can be used
upgrade warnings to -Wall -Werror -Wno-sign-compare
add WARNINGS to CXXFLAGS