FIXUP, taking into account kalkplok's remarks

- Introduce an 'internal_gas' type and a field of this type in
  alpha_context. This value corresponds to the sub-gas cost still
  unbilled to the protocol. One unit of 'gas' corresponds to
  2^7 units of 'internal_gas'.
- All calls to Gas.consume internally manipulate the finer granularity
  internal_gas for the computations and update the 'internal_gas'
  field accordingly.
- The net effect is that for sequence of cheap instructions there is a
  'fast path' in gas computation as long as the accumulated
  internal_gas is below one unit of gas.
51 jobs for gas-update-005 in 28 minutes and 34 seconds (queued for 5 seconds)
Status Job ID Name Coverage
  Build
passed #249732957
gitlab-org
build

00:04:29

passed #249732953
gitlab-org
check_indentation

00:01:18

passed #249732949
gitlab-org
check_opam_deps

00:02:17

passed #249732950
gitlab-org
check_opam_lint

00:01:15

 
  Unittest
passed #249732994
gitlab-org
test:client_alpha:vote

00:01:48

passed #249732970
gitlab-org
test:crypto

00:01:39

passed #249732963
gitlab-org
test:data_encoding

00:01:39

passed #249733007
gitlab-org
test:micheline

00:01:35

passed #249732992
gitlab-org
test:p2p:banned_peers

00:02:44

passed #249745904
gitlab-org
test:p2p:io-scheduler

00:02:04

passed #249732989
gitlab-org
test:p2p:ipv6set

00:01:35

passed #249732985
gitlab-org
test:p2p:peerset

00:01:32

passed #249732979
gitlab-org
test:p2p:pool

00:01:49

passed #249732977
gitlab-org
test:p2p:socket

00:01:30

passed #249732983
gitlab-org
test:proto_alpha:lib_client

00:01:39

passed #249732981
gitlab-org
test:proto_alpha:lib_protocol

00:06:16

passed #249732972
gitlab-org
test:shell

00:01:42

passed #249732960
gitlab-org
test:stdlib

00:01:39

passed #249732961
gitlab-org
test:stdlib_unix

00:01:32

passed #249732966
gitlab-org
test:storage

00:01:41

passed #249733006
gitlab-org
test:validation

00:01:34

failed #249732975
gitlab-org
test:p2p:io-scheduler

00:00:58

 
  Integration
passed #249733060
gitlab-org
integration:baker_endorser

00:05:07

passed #249733076
gitlab-org
integration:basic

00:03:21

passed #249733087
gitlab-org
integration:contract

00:02:45

passed #249733093
gitlab-org
integration:contract_baker

00:02:26

passed #249733111
gitlab-org
integration:cors

00:03:33

passed #249733095
gitlab-org
integration:injection

00:02:22

passed #249733052
gitlab-org
integration:linter_python

00:02:40

passed #249733099
gitlab-org
integration:many_bakers

00:02:51

passed #249733101
gitlab-org
integration:many_nodes

00:02:21

passed #249733102
gitlab-org
integration:mempool

00:02:39

passed #249733104
gitlab-org
integration:multinode

00:02:33

passed #249733105
gitlab-org
integration:rpc

00:03:22

passed #249733108
gitlab-org
integration:tls

00:02:17

passed #249733106
gitlab-org
integration:voting

00:03:29

passed #249733009
gitlab-org
test:basic.sh

00:03:44

passed #249733010
gitlab-org
test:contracts.sh

00:02:43

passed #249733012
gitlab-org
test:contracts_macros.sh

00:03:47

passed #249733015
gitlab-org
test:contracts_mini_scenarios.sh

00:03:42

passed #249733011
gitlab-org
test:contracts_opcode.sh

00:04:20

passed #249733021
gitlab-org
test:inject.sh

00:02:57

passed #249733016
gitlab-org
test:multinode.sh

00:03:49

passed #249733023
gitlab-org
test:proto:sandbox

00:02:18

passed #249733034
gitlab-org
test:sandboxes:acc-baking

00:03:23

passed #249733049
gitlab-org
test:sandboxes:acc-endorsement

00:02:32

passed #249733028
gitlab-org allowed to fail
test:sandboxes:voting

00:06:31

passed #249780249
gitlab-org
test:voting.sh

00:02:37

failed #249733022
gitlab-org
test:voting.sh

00:01:48

 
  Documentation
passed #249733112
gitlab-org
test:documentation

00:03:41

passed #249733113
gitlab-org allowed to fail
test:linkcheck

00:06:05