Handle incorrect bus extraction in the front-end

Things like foo(0,1) (instead of the correct foo(1,0)) result in helpful
error messages, rather than incorrect Verilog.