I think a major issue when thinking about this subject is that we forget that God does not necessarily exist within the confines of our reality. What doesn't make sense to us makes sense to Him.
I think any major argument on this tends to break down into the typical Armenian vs. Calvin's debate (which tends to be an excercise in semantics and is ultimately not worthwhile).
God, in His sovereign power, has allowed mankind to act against His will. None of us could topple the ultimate plan of The Father, but He has allowed us control of our own choices.
I try not to think of it like "fate" or "destiny" but rather a plan for my life, made by God, which I can (and will) follow.
If we are all puppets then sin doesn't exist, because sin is the transgression of God's Law, and if God is controlling our actions to do something, it cannot be against His will.