There are other threads that have covered this to some extent, though it's a work in progress. Search is your friend.

cheers!