This is an extension of #37 (see the final comments there); big blocker is needing something to test it with.
Activity