Make setup.py more robust.
Use docopt to parse command line arguments.
Fix bug: Some date strings have leading and trailing spaces.