Update task uses API

Less horrible and could be run on a schedule, unlike the old semi-manual process.

We lose widths and heights (unless we make a ridiculous number of requests) but that's fine.

We have to keep a list of some non-API emoticons which is weird but acceptable; they probably won't change.