Refactor humane datetime parser

Makes it easier to add new formats.
Merge pull request #1 from agateau/datetimeparser-refactor

Refactor humane datetime parser
Merge remote-tracking branch 'origin/0.13'