vk/vector: add an extra simple vector implementation.

Based on arrays of elements of arbitrary sizes and realloc().
hikaru/renderer: simplify new().

And don't leak memory in the error path.
hikaru/gpu: it is pointless to store 'cycles' in the CP.
hikaru/gpu: it is pointless to store 'insns' in the CP.
hikaru/gpu: update the CP insns format and description table.

According to the Demul authors, CP opcodes are only 9-bit wide (as opposed to
the 11-bits we were using previously). This doesn't make much of a difference,
emulation-wise, but it's cleaner.

We take this opportunity to factorize instruction execution; a bunch of
renderer-related cleanups will follow.

Also, more updated docs (a couple of bits were, again, donated by the
Demul authors.)
sh4: use binary operations in fneg
hikaru: dump filename should include game title.

Also dump slave AICA RAM in aica-s.bin, rather than the master AICA RAM twice.
hikaru: add an utility to render the contents of the GPU CMDRAM

It uses the RAM dumps (CMDRAM, slave RAM, etc.) generated by valkyrie.

Hopefully this will help us to fix the render to work with PHARRIER and
AIRTRIX!