I've seen that Hindus worship lord Ganesha before starting any _puja_ (act of worship) or important task.

I've also seen people worshipping lord Ganesha before they start off with marriage proceedings, and on marriage invitation cards. 

They also keep idols of lord Ganesha in their cars, home entrances, etc....

So why do they always worship lord Ganesha before they go to start off with some good/important tasks?