Use CMAKE_CXX_FLAGS to store LLVM flags

This is recommended usage and allows us to do a C++11 check
http://stackoverflow.com/questions/13638408/cmake-override-compile-flags-for-single-files
rename LLVM_DEFINITIONS -> LLVM_FLAGS

This change was made for consistency to a change in the top level
CMakeLists.txt. llvm-config does in fact return flags, so this is
clearer.
add required abstract event methods
add required abstract event methods
instantiate gpu sim model