When the TSA Agent said he wasn't detained yet refused to return his stuff, was that not theft?
Legally? Probably not, for some idiotic reason about national security, airports being special, evidence, or some shit like that.
But at the time, what else could I do, besides wait for the police to show up?
Sorry that you had to go through this, and thank you for the very well-written account of how this ordeal looked first-hand.
Perhaps take into account authenticated activity, or lack thereof? Activate this special functionality when you anticipate possible issues (e.g. going through airport security) and you've got a timer waiting on some element from Action Set Y to occur every X minutes before notifying emergency contact(s) Z, specified previously.
Sounds like an idea...