That's fine depending on the memory controller being used. They must be build equally in banks to enable dual/triple channel memory. In the example you give is perfectly fine. Consider also it's not just capacity, but frequency and latencies.
Should be no problem, I run 2*2 and 2*4 in my socket 1156 setup (which I believe the i7-860 runs on too). Also worth nothing that in addition to being different capacity, my sticks are also:
-Different brand (G-Skill and Corsair)
-Different latency rated (7-7-7-24 and 9-9-9-24)
-Different voltage rated (1.65v and 1.5v)
I wouldn't recommend the above configuration but in my case at least it does work with some BIOS adjustments.
Do you recommend getting RAM with same Latency and voltage to avoid complications?
I'm not a big whiz since this was my first rig.
Yes, but it is not entirely necessary as the faster RAM will simply have to run at the speed of the slower RAM. However, you should find that all new kits will operate at 1333MHz/1.5V any way.
Yep, most 1600MHz ram needs to be overclocked in bios from 1333MHz, by just selecting the XMP profiles if your ram has them (Extreme Memory Profile), they will automatically change the ram to the 1600MHz profile for you.
on older i7 6gb and 12gb works better from what i heard