added timeout operator

The grammar must be respected ([rule 1.2](https://github.com/monifu/monifu/wiki/Rx-Contract-and-Design-Guidelines#12-the-grammar)), yet this can end up sending 2 `onComplete` events instead of just 1, coupled with the problems I mentioned above.