I looked at jug briefly but stopped when I saw native libraries. If there were a way to use it and extend it so that native bits aren't needed, then I'm +1. I prefer to avoid introducing native libs if we can avoid it, especially for something this trivial. I like the 'put something else unique in those bytes' approach.
2-4 modify introduces DefsTable (similar to SystemTable) as a way to modify storing and loading the data definitions to the new definitions keyspace.
5 makes it so that cfid generation is safe across restarts and can happen at times other than startup.
6 gives support for tracking historical CF names. In the case of cf renames, the id doesn't change, but the name does and we need a way to get back to the id when recovering.
The basic idea of the set is that we need to add support for reading data definitions from storage and not xml.