Add title to attributes

I added a UI title to the attributes. During that time you added the gui display feature, so when I merged I had some conflicts. I took that opportunity to make that an optional key "hidden" that is accessed with item.get('hidden', False), so all items without the key is shown. I also compacted the pre submit hook list construction.

Now I can go and port our actual submit code to be run in the hook. :)