Yes you can mix cards. I am currently running two 570s, two 580s, a GTX 1070 and a GTX 1060 in one rig. The only problem I had was with each RX card I added I had to uninstall and reinstall the AMD driver before Windows would work with all the AMD cards. Nvidia cards are so much nicer, they just work, no BIOS modding or anything. If 1070s were < $300 that's all I would use.
With Nicehash software there is no problem, so my be is not s a driver problem.