Wow! you guys are of GREAT help!!! Thank you everyone for your reply. You answered my questions. I am a US citizen but originally from North Africa so I guess the reason they are taking long is because they are doing a background check. I have received the e-mail saying that I was successful and I have responded with my acceptance. They told me that the next step would be to get a formal offer and it has taken 3 weeks. That's why I got a little worried. But from what you guys said, this apprears to be normal. I even contacted the engineering HR and was told that I would hear from them soon but that was 2 weeks ago!!!
Thank you all once again for your replies.