Funnel rebase

Holy crap, you forked this branch nearly a thousand commits ago?
Anyway, this merges and does all the reformatting and cleanup I was asking for.
It'll still need to have the issue where it only uses the previous weather span sorted out.