Register new snapshots

Mostly just using the `system` abi where possible.