I'll go with a request for more information, here.
What are your plans on the "upgrade" bit? Are you planning on moving into an i5 or i7 down the road? Getting a fancy 120Hz+ monitor down the road? A bigger resolution screen? Etc.
I ask those questions, because there are some implied restrictions you will have (unfortunately) going with AMD or nVidia now. That is, Freesync or GSync, plus the "this game loves AMD/nVidia" situation.
If you're planning on upgrading your i3 to, say, an i7 (or even i5) K and do some OC, then a 1070 is the best option for you. You'd have to go with GSync (which has a hefty premium to it) if you want a high refresh + fancy sync tech, but will offer the best performance you can get for a good time; at least, until AMD reveals the Vega siblings.
If you decide to stick with the i3 for a long time, then it will depend on your monitor requirements and games you want to play. On average, if you don't fancy any new-tech monitor out there, in all fairness toss a coin. I have the RX 480 4GB and built a computer for a friend with the 1060 6GB. Both are *great* cards for the money and the edge goes to the 1060 6GB if you like silent builds. I went with the RX480 because I have a Freesync monitor and it's a great pair.
Cheers!