loci: generate list accessors with a template

Still uses the legacy code to figure out which lists to generate.
loci: generate lists from the IR
loci: replace of_object_wire_init in list accessors

The of_object_t was already initialized in the list_first accessor. Most of the
work done by the init call in of_object_init is redundant, and as an indirect
call from a central function it is likely to be mispredicted.
loci: factor out class metadata generation

The parsing code also needs this at compile time.
loci: replace indirect wire_length_get calls

All objects of the same inheritance tree use the same wire length accessors. We
know what inheritance tree we're working with, so generate a direct call.
loci: remove of_object_fixed_len lookup from list accessors

This can be done once inside the base class init function during the 'first'
operation.
loci: remove dead code
Merge remote-tracking branch 'origin/master' into codegen-list
loci: fix merge with of_object_attach changes

We don't want to do the wire buffer grow check when iterating over a list.
loci: simplify list type extraction
Merge into master from pull request #284:
Convert list accessors to templates and optimize (https://github.com/floodlight/loxigen/pull/284)