This has come up in pandas.Timestamp (which subclasses datetime). The
issue is internal consistency and round-trips. Intuitively, we would
expect:
```
a = datetime.utcnow()
b = a.timestamp()
c = datetime.utcfromtimestamp(b)
assert a == b
```
but this fails. (Note: it works for `datetime.now()` with
`datetime.fromtimestamp()`, though that is partially because of weird-to-me
behavior of `timestamp()` for naive datetimes).
It would succeed if utcnow and utcfromtimestamp returned tz-aware datetime
objects. Thoughts?