Fixing timezone-aware datetime handling

Previously, passing the current time in UTC will generate incorrect deltas. For example, if I pass a recent time in UTC, it'll tell you '7 hours from now' when the answer really is '30 minutes ago'.

I've changed it to look for tz awareness in the date string and if it finds it, it will calculate the delta using the current date in UTC.

Added tests around the change - mostly just copypasting what was there, except with UTC dates. Let me know if you want any changes there. Thanks.