Support in LLVM backend for new atomic primops.

This is very basic support for now to get some progress. We simply call
into the RTS for everything except loads. This is poor for performance
and eventually we should use LLVM's direct support for atomic
operations.