Merge branch 'next'

* next:
  fix, PEBKAC, mind gcc and clang not being able to in-situ forward declare funs
  fix, redo reverted patch with additional check for alloc'd field space size
  Revert "minor, copy one more message field than needed to aid anal()'s cache"
  minor, copy one more message field than needed to aid anal()'s cache
  minor, use res->pz to keep track of to-be-processed data in anal()
  minor, allow anal() parser to return the number of bytes successfully parsed
  minor, hygiene, refactor key/value state machine into anal() and use it for both compressed and uncompressed messages
  chore, cosmetics, add some assertions to check_size() for fixc msg builder and mem diagnostics
  minor, fix up user defined messages trivially (just up the streak counter)
  hygiene, refactor hdr and ftr rendering (__render_hdr(), __render_ftr())