[WiP] gallium: Work in progress on OpenFIMG driver

Changes:
 - go back to clean fd_ringbuffer and implement packet handling
   explicitly by END_PKT() function,
 - precompute draw request parameters and store them in draw cache,
 - recalculate vertex- and index-specific parts of draw cache key only
   when respective dirty flags are set,
 - optimize layout of structures for lowest memory usage (sort by field
   size descending).