Manage both good/bad release and date - Bug 996812

I add the command line options *--good_release*/*--bad-release* (that will also be converted to dates). I decorate functions with good/bad date parameters to also accept releases.
I also test the decorator and release to date conversion.

Commit message:
- Add good/bad release in command line arguments.
- Add decorators to functions receiving good/bad date parameters to accept also releases.
- Add tests for decorator and release to date conversion
I agree with cpeterson, we shouldn't try to anticipate the future. So let's take 35+ out (although we might put 35 back in if the merge happens before we apply this patch). :)