Squashed 'wicker/' changes from aa4402d..0d572cc

0d572cc a bunch of cross-compatibility code for DST

git-subtree-dir: wicker
git-subtree-split: 0d572cc877d0ed930799d39a542a94957827926e
wicker merge. so much cross-compat code. wow. much type. very work.
some adjustments for DST