Refactor Builder::Argument and subclasses' #process methods.
Refactor Builder::Argument and subclasses' #process methods.

Pushes down the code generation logic into the #pre and #post methods as
much as possible. To complete this move, the link between array and length
argument will have to be made bidirectional.

mvz/gir_ffi,jcupitt/gir_ffi,jcupitt/gir_ffi,mvz/gir_ffi,mvz/gir_ffi