To remove oily or greasy stains you can try this homemade Greasy Stain Remover.
It consists of simply sprinkling baking soda or cornstarch on the stain, left to its own devices it will absorb the grease or oil into itself. Ideally you should let stand overnight, or at the very minimum at least for six hours. Then all that needs doing is a good vacuum.
Another great use of baking soda is to leave an open container of baking soda in the fridge as it will absorbe any unpleasant odours.