An R7 1700 and GTX 1060 6 GB will work perfectly fine together.
The question should be rephrased as, does the performance of a GTX 1060 6 GB pair well with the performance of a Ryzen R7 1700, and the answer to that would be yes.
Can you do better? Yes. That CPU can run faster graphics cards if you want. That's up to what you're willing to spend, and you might take into consideration the screen you're planning to output to, as it may limit whether you can even get significant benefit from the amount of rendering that can be done by the card.
There is always a bottleneck in computing, otherwise you would achieve infinite performance, or in the case of games, infinite frames per second.
In gaming, this is usually either caused by the CPU or the GPU, but there are still cases when it's caused by neither. Whether it's the CPU or the GPU depends both on the speed of your CPU and GPU, and on the software or game you are running. The best you can do is shoot for a reasonably balanced combination of CPU and GPU, but even then, depending on the software you run, or the settings you run that software at, the bottleneck will shift back and forth from one to the other.
Starting your build with a good CPU will allow you in the future to upgrade your graphics card and realize some decent gains in performance, while the same holds true of building with a better graphics card than CPU.
A 1080 or 1080 Ti would be fine if the OP wants to up his budget significantly. 1070's are also good cards, if you could find one that the price hasn't been inflated out of proportion too badly on.
Same goes for an RX Vega 56. A good card, but stuck with a bad price, and further inflated by market shortages.