Thanks for your comments.
I agree - it is highly dubious! But hopefully that doesn't make it without merit.
In Part II, I do talk a little (just a little) about why you probably aren't going to want to use this. At least not, "as is".
Firstly I should say that my primary goal in writing this was to see if it could be done! You don't have to think too long to think of reasons why you mightn't want all tables in your database (or database instance) logging to a single column in a single table. (The word 'contention' comes to mind.) Also the trigger is BIG even for a few columns, and there's quite a lot going on.
However, I do think that there are occasions when this could have valid applications. If your data is very slow moving (and some data is) then you might consider it, selectively. I'm also thinking of a specific table or small group of tables where the front end application allows you to perform calculations - and then allows you to keep or discard (undo) the results of these calculations.
Another scenario could simply be when you want to script an insert statement, for a promotion. Using the trigger, you can load the data in the table any way you wish, and then copy from the audit table to script it.
So in some ways it's still a solution waiting for a problem. But at least the day when I discover the precise problem, I'll already have the solution!