Change type of HVect.put/get/update so auto works
Change type of HVect.put/get/update so auto works

auto implicits need to go after the arguments they refer to, because
elaboration works left to right, and until we have better rules they may
end up solving things too early if we're not careful.

Currently: Proof search will start as long as no metavariables in the
goal type correspond to positions in the data type where an argument is
in constructor form (i.e., solving by that constructor would work
trivially, thus solving the metavariable too early).

Fixes #2656

bravit/Idris-dev,jeremy-w/Idris-dev,lenary/Idris-dev,kojiromike/Idris-dev,Heather/Idris-dev,markuspf/Idris-dev,shlevy/Idris-dev,eklavya/Idris-dev,aaronc/Idris-dev,jeremy-w/Idris-dev,adnelson/Idris-dev,mpkh/Idris-dev,tpsinnem/Idris-dev,KaneTW/Idris-dev,enolan/Idris-dev,shlevy/Idris-dev,mrmonday/Idris-dev,jmitchell/Idris-dev,enolan/Idris-dev,enolan/Idris-dev,aaronc/Idris-dev,kojiromike/Idris-dev,FranklinChen/Idris-dev,uuhan/Idris-dev,markuspf/Idris-dev,enolan/Idris-dev,mpkh/Idris-dev,mpkh/Idris-dev,Heather/Idris-dev,adnelson/Idris-dev,lenary/Idris-dev,uuhan/Idris-dev,ozgurakgun/Idris-dev,mpkh/Idris-dev,mrmonday/Idris-dev,KaneTW/Idris-dev,adnelson/Idris-dev,TimRichter/Idris-dev,Heather/Idris-dev,tpsinnem/Idris-dev,aaronc/Idris-dev,jmitchell/Idris-dev,adnelson/Idris-dev,tpsinnem/Idris-dev,aaronc/Idris-dev,ben-schulz/Idris-dev,Heather/Idris-dev,uuhan/Idris-dev,FranklinChen/Idris-dev,ben-schulz/Idris-dev,ozgurakgun/Idris-dev,jmitchell/Idris-dev,kojiromike/Idris-dev,uuhan/Idris-dev,markuspf/Idris-dev,KaneTW/Idris-dev,enolan/Idris-dev,aaronc/Idris-dev,ozgurakgun/Idris-dev,ozgurakgun/Idris-dev,lenary/Idris-dev,jmitchell/Idris-dev,KaneTW/Idris-dev,jeremy-w/Idris-dev,mrmonday/Idris-dev,shlevy/Idris-dev,jmitchell/Idris-dev,mrmonday/Idris-dev,jeremy-w/Idris-dev,enolan/Idris-dev,mrmonday/Idris-dev,mpkh/Idris-dev,uuhan/Idris-dev,kojiromike/Idris-dev,markuspf/Idris-dev,lenary/Idris-dev,markuspf/Idris-dev,ozgurakgun/Idris-dev,jmitchell/Idris-dev,jeremy-w/Idris-dev,Heather/Idris-dev,markuspf/Idris-dev,aaronc/Idris-dev,kojiromike/Idris-dev,TimRichter/Idris-dev,adnelson/Idris-dev,eklavya/Idris-dev,tpsinnem/Idris-dev,bravit/Idris-dev,ben-schulz/Idris-dev,shlevy/Idris-dev,eklavya/Idris-dev,TimRichter/Idris-dev,lenary/Idris-dev,bravit/Idris-dev,TimRichter/Idris-dev,tpsinnem/Idris-dev,FranklinChen/Idris-dev,uuhan/Idris-dev,bravit/Idris-dev,eklavya/Idris-dev,kojiromike/Idris-dev,jeremy-w/Idris-dev,markuspf/Idris-dev,FranklinChen/Idris-dev,TimRichter/Idris-dev,FranklinChen/Idris-dev,mpkh/Idris-dev,shlevy/Idris-dev,shlevy/Idris-dev,eklavya/Idris-dev,ben-schulz/Idris-dev,ben-schulz/Idris-dev,tpsinnem/Idris-dev,TimRichter/Idris-dev,FranklinChen/Idris-dev,Heather/Idris-dev,KaneTW/Idris-dev,lenary/Idris-dev,bravit/Idris-dev,bravit/Idris-dev,uuhan/Idris-dev,eklavya/Idris-dev,ozgurakgun/Idris-dev,mrmonday/Idris-dev,ben-schulz/Idris-dev,adnelson/Idris-dev,KaneTW/Idris-dev