I don't think you can do that. Many have tried and failed. Not even Oracle offers products with such a dynamic solution, although they'd like to in several products including Replication.
For a solution that is nearly dynamic, and proven to work, look at Oracle's advanced replication software. When you tell it to generate rep support for a table, Oracle determines all of the columns and then builds/replaces a trigger with that data. If you add/mod/del a column then you must regenerate replication support. This is the same requirement for your auditing. You need code that can look at the table definitions and build a trigger, and you need to rerun this code each time you alter a table.
Pitfall ... you need to quiesce the database before altering any tables. this is to prevent users from insert data into the new table while the triggers are based on the old table structure (and therefore invalid.)