Implement notion of different image sources

This is so that we can do a http push to get the code running.

# Ready for merging

Example usage:

```
curl -H 'Content-Type: application/zip' -v --data-binary @- localhost:9123/update < ~/sw/auger/dist/v0-509-g58b9911.zip
```