fdre-a3xx: add fd_draw_{elements,arrays}()

Now we can draw simple quad or triangle+quad.
fdre-a3xx: fix small assembler bug

Some instructions can take repeat flag on immediates.
fdre-a3xx: add varyings and triangle-smoothed, etc

Handle state setup for shaders with varyings (which requires setting
some more registers for varying output register, storage, etc) and
hard-coding things a bit less.  Also add *-smoothed tests which make use
of varyings.