ResetDeclines Command

This is a nice simple first one.
I set the declines to 0, and on Undo I set it back to what it was

There's no extra form or information, it just does the thing.
Undo and Undoable Command Harness

It's a little weird to start with Undo when there's nothing to Undo yet,
but it's laying the groundwork for what's to come.

This gives me a harness I can use here that gets the action, performs
it, gets the result of that performed action, and then persists that to
the log and reports success or failure.

And the first such action I have just grabs the most recent item and
undoes it.
Move Cancel and Financial Admin Commands

This class gets pretty tight later, so I have to move these out to make
room in the class for the other commands.

This Simple class is a bit weird on its own here, but it makes a bit
more sense later when compared to another class.
AdminAction and AdminActionRepo

This allows me to enqueue a description of a change to a stream and then
run it. And then later find / list them and undo any of them.

The goal here is to make these safe to run and safe to reverse so the
user can just run things with confidence knowing that undo's always got
their back.

This allows me to avoid confirmation boxes on everything and careful
scrutinizing of each command before it's run just in case...
Invites Repo

In preparation for another command I'd like to make I've first got to
make a place where Invites live.

There's probably other parts of the code that interact with Invites that
I've missed, but this is a good start at least.
Cleanup Admin Form

It used to handle the initial failure differently than internal failure.
Now I've moved the outside bits inside, so it can run again when it
encounters an unknown character.
Merge branch 'policy'

* policy:
  Show FUP before starting registration in earnest
Show FUP before starting registration in earnest
If balance is exactly enough, still use it
Log errors from rev.ai
Finish span on error as well
Add breadcrumbs regardless of log level
Sentry instrumentation to own file, better logger, instrument redis
Testing has gone well, enable RevAI for everyone

Disabling the Bandwidth transcription in the process
Error String becomes an exception

So that singletons can be added, for example
Do not use the promise results here, since they are meant for elsewhere

Explicitly return true to avoid passing to next link in the tree.  Make sure
command stanzas fulfill both command and iq manager if needed.
Merge branch 'dry-sentry'

* dry-sentry:
  DRY up sentry and logging
Merge branch 'vcard4'

* vcard4:
  Switch TTS OGM from vcard-temp to vcard4 PEP