bump cuda package dependency for Eq instances
split Async stuff into separate module
async: update comment

we need to run in a bound thread because CUDA uses thread local state, but the Context can migrate to a different CPU via push/pop (at least in recent versions)
add prim support for copying between contexts/devices
add equality instance for our context wrapper