Would it be possible to pass in a string describing the input structure as an argument to the UDX? This is how I've implemented a JDBCSource, by allowing user to pass connection string and query as arguments, though not sure whether this would parallelize well: https://github.com/bryanherger/vertica-java-udl/blob/master/src/main/java/com/bryanherger/udparser/JDBCLoaderFactory.java
Extending the above, you could create a metadata file describing the input on a shared location visible to all nodes, and pass that as an argument. Then each instance could pick up the metadata and act on columns as directed by the metadata file.
Another option if it's necessary to specify column name might be to transform the input into JSON. This would add the field name to every row, though this would greatly increase the data size and probably slow down disk and I/O considerably if the input data set is very large.
Users & privs is not part of the plan but it is a good idea - thanks, I will write a Jira for it!
Depot pinning will be available at the subcluster level with Ver 10.
Resource pools at the subcluster level is coming in a near future release.