I wrote an answer a while back on a question similar to this. If you want me to expand upon anything, do let me know and I can try to help.