OpenCL vs CUDA Rendering
Go with the Nvidia.  Performance aside, CUDA works better with Cycles.  Until recently, OpenCL was not even supported in Cycles so it is not as bug-free and stable as CUDA.  Another thing to consider is that usually new features are supported on just CPU first, then CUDA, then OpenCL.  So be prepared to wait a little while to use new features on your GPU if you go for the ATI card.

To be fair, OpenCL is by no means unusable, it just isn't as polished as CUDA.  I do have a friend with an R9-390 and it mostly works fine in Cycles.

In fact, here is a list of supported AMD devices as of May 2015.



With regards to your last statement about other software:

Most commercial 3D software (Autodesk included) won't really work with a gaming-class GPU at all, and definitely not an ATI card.  If you want to use that kind of software you really need a workstation-class GPU (i.e. Nvidia's Quadro cards, frankly ATI's workstation cards are a joke).

However, keep in mind here that Blender is not optimized for workstation cards.  That doesn't mean that they don't work at all in Blender, it's just that Cycles just won't be able to take advantage of the extra features you are paying for in a Quadro.

Workstation cards are also not ideal for gaming.  I do have a Quadro M4000 and it works fine for the few games I play (AoE III, Civ V, a couple old emulators, etc.), but if you are any kind of a serious gamer you definitely don't want a workstation card.