The tracker globals for an instance will now hold a list (so we can
adduce order) of dictionaries. Each dictionary describes one custom
field and contains at least a 'name' and 'type' key. This means we no
longer iterate over a comma-delimited string: no more splitting.
In this initial commit, no new types are added. Custom fields are
automatically marked as being of type 'str'. This just puts the new
data-structures in place and updates display code accordingly.