Fix subtract bug

Setting date, component by component was the problem. Now, a new Date
instance is created at once and the old one is replaced.

This might happened in other scenarios and those should be fixed too.

Closes #17.
0.3.3