Added Device::notifyFatalError() method.
Removed error messages from Program and Kernel (caller reports error).
oclgrind-kernel reports errors from failed spirsim functions.
Fatal errors now rasied as exceptions.
llvm_trap throws exception directly (removed WorkItem::trap()).