crontab: make tempfile use utf-8 encoding
The current version does not support crontabs with non-latin text,
and utf-8 as the default unicode encoding should hopefully resolve
nearly all crontabs with non-latin text. Those crontabs with non-utf8
binaries should be broken by nano (or many other text editors) anyhow.
We also change from manually calling encode & decode into opening
the tempfile with the encoding, because it looks better this way.