Reduce docker image size by > 50% (#1335)
Reduce docker image size by > 50% (#1335)

By wrapping the build tools installation and removal in the same
layer, we can prevent the download of that weight in a previous
layer.

```
before ...  242.70 MB
after  ...   94.93 MB
```

Contributing layers, and the fix:

```
$ docker history before
IMAGE               CREATED             CREATED BY                                      SIZE
49fc4fec61cf        4 minutes ago       /bin/sh -c #(nop) COPY dir:a35abf98d7e251057f   2.808 MB
af74caea7748        4 minutes ago       /bin/sh -c pip install --no-cache-dir -r requ   34.93 MB
698d746acb8c        6 minutes ago       /bin/sh -c #(nop) COPY file:e9ce3df02e968ddde   257 B
e1f6a843f2f2        6 minutes ago       /bin/sh -c apk add --no-cache     build-base    148.5 MB
<missing>           2 days ago          /bin/sh -c set -ex  && apk add --no-cache --v   51.65 MB
<missing>           4 weeks ago         /bin/sh -c #(nop) ADD file:852e9d0cb9d906535a   4.799 MB

$ docker history after
IMAGE               CREATED              CREATED BY                                      SIZE
92939ad7153c        About a minute ago   /bin/sh -c #(nop) COPY dir:d14755e414af926414   2.808 MB
334b7b6d7852        About a minute ago   /bin/sh -c apk add --no-cache build-base  &&    34.93 MB
2ea7e1be38b9        3 minutes ago        /bin/sh -c #(nop) COPY file:e9ce3df02e968ddde   257 B
d629c2deeedf        3 minutes ago        /bin/sh -c apk add --no-cache ca-certificates   746.4 kB
<missing>           2 days ago           /bin/sh -c set -ex  && apk add --no-cache --v   51.65 MB
<missing>           4 weeks ago          /bin/sh -c #(nop) ADD file:852e9d0cb9d906535a   4.799 MB
```

(Removed some 0byte lines from the history output for clarity)
BallCity/PokemonGo-Map,SilphServices/RocketMap,LeluStudios/PogoMap,mpw1337/RocketMap,tomballgithub/RocketMap,Shibby7986/PokemonGo-Map,hasosoft/PokemonGo-Map,woest85/PokemonGo-Map-1,NenadJAustralia/PokemonGo-Map,averylarry/RocketMap,averylarry/RocketMap,SilphServices/RocketMap,POPSuL/PokemonGo-Map,LeluStudios/PogoMap,DeWenS/PokemonGo-Map,BallCity/PokemonGo-Map,oxyrox/PokemonGo-Map,jjiko/PokemonGo-Map,edgarborja/PokemonGo-Map,dev042/RocketMap,voxx/RocketMap,dev042/RocketMap,mpw1337/RocketMap,anon0429/PokemonGo-Map,NickG1025/PokemonGo-MapPokeEdge,POPSuL/PokemonGo-Map,markusz/PokemonGo-Map,zhengwang3351898/Pokemongo-Map,redswallow/pokemon-go-map,doeiqts/PokemonGo-Map,DarkSwatcat/PokemonGo-Map,pdong/PokemonGo-Map,Obihoernchen/RocketMap,nijave/PokemonGo-Map,osalivan/po-go,potamax/maptest,loquendomia/KokoxGO,ultrafunkamsterdam/PokemonGo-Map,SilphServices/RocketMap,darragjm/PokemonGo-Map,boby361/RocketMap,xrobau/PoGoMap,voxx/RocketMap,NickG1025/PokemonGo-MapPokeEdge,pir2/PokemonGo-Map,cristianougly/pokemongosaoleo,pgandev/RocketMap,JapuDCret/RocketMap-Do,annatran/PokemonGo-Map,anon0429/PokemonGo-Map,commanderjsoc/PokemonGo-Map,pgandev/RocketMap,edmundlam/PokemonGo-Map,AEtHeLsYn/RocketMap,ultrafunkamsterdam/PokemonGo-Map-V2,catnet23/PocketMap,NickG1025/PokemonGo-MapPokeEdge,cristianougly/pokemongosaoleo,oxyrox/PokemonGo-Map,mikehow1984/PokemonGo-Map,k0mat/PokemonGo-Map,djfye/PokemonGo-Map,MaTriXy/PokemonGo-Map,NenadJAustralia/PokemonGo-Map,edgarborja/PokemonGo-Map,gsabran/PokemonGo-Map,webycel/PokemonGo-Map,cocktail13/pogom.py,chrux/PokemonGo-Map,osalivan/po-go-go,NenadJAustralia/PokemonGo-Map,Alderon86/RocketMap,Studio-XP/PokemonGo-Map,invisiblek/PokemonGo-Map,simonhashadenough/PokemonGo-Map,woest85/PokemonGo-Map-1,FranManre/PokeMap,catnet23/PokemonGo-Map,KoertJanssens/MasterBall.be,commanderjsoc/PokemonGo-Map,hubertokf/RocketMap,osalivan/po-go,pkgta1/shuffle,zhengwang3351898/Pokemongo-Map,Alderon86/RocketMap,dev042/RocketMap,tsuncp/PokemonGo-Map,cadocruz/PokemonGo-Map,alokki/PokemonGo-Map,djfye/PokemonGo-Map,cocktail13/pogom.py,rpotpogo/PokemonGo-Map,DarkSwatcat/PokemonGo-Map,xrobau/PoGoMap,pkgta1/shuffle,seebadoris/pkmapmons,vulampharmd/test,horatiulefter/pokemon,cadocruz/PokemonGo-Map,neskk/PokemonGo-Map,potamax/maptest,Zoruk/PokemonGo-Map,saulomarchiori/PokemonGo-Map,Zyrix/PokemonGo-Map,djfye/RocketMap,Obihoernchen/RocketMap,filmkorn/PokemonGo-Map,HowDoesExcelWork/RocketMap,edmundlam/PokemonGo-Map,Zyrix/PokemonGo-Map,patlanio/PokemonGo-Map,KoertJanssens/MasterBall.be,patlanio/PokemonGo-Map,simonhashadenough/PokemonGo-Map,gsabran/PokemonGo-Map,vulampharmd/test,oxyrox/PokemonGo-Map,cadocruz/PokemonGo-Map,tanishbaansal/pokemongomapi,Zoruk/PokemonGo-Map,redswallow/pokemon-go-map,PiaFraus/PokemonGo-Map,darragjm/PokemonGo-Map,catnet23/PocketMap,loquendomia/KokoxGO,CalcMan/PokemonGo-Map,medghaim/PokemonGo-Map,slgphantom/RocketMap,luisintosh/poke,ultrafunkamsterdam/PokemonGo-Map-V2,jjiko/PokemonGo-Map,darragjm/PokemonGo-Map,woest85/PokemonGo-Map-1,Xcelled/PokemonGo-Map,chrux/PokemonGo-Map,Shibby7986/PokemonGo-Map,DeWenS/PokemonGo-Map,invisiblek/PokemonGo-Map,RocketMap/RocketMap,ultrafunkamsterdam/PokemonGo-Map,pir2/PokemonGo-Map,mpw1337/RocketMap,catnet23/PocketMap,gsabran/PokemonGo-Map,xrobau/PoGoMap,CalcMan/PokemonGo-Map,edmundlam/PokemonGo-Map,hubertokf/RocketMap,nijave/PokemonGo-Map,FranManre/PokeMap,umeku/PokemonGo-Map,Studio-XP/PokemonGo-Map,pdong/PokemonGo-Map,loquendomia/KokoxGO,annatran/PokemonGo-Map,neskk/PokemonGo-Map,Studio-XP/PokemonGo-Map,marauder37/PokemonGo-Map,medghaim/PokemonGo-Map,voxx/RocketMap,pgandev/RocketMap,pretsell/PokemonGo-Map,sclo012/PokemonGo-Map,woest85/PokemonGo-Map-1,an0ninja/PokemonGo-Map,houkop/PokemonGo-Map,neskk/RocketMap,pdong/PokemonGo-Map,JapuDCret/RocketMap-Do,NickG1025/PokemonGo-MapPokeEdge,chrux/PokemonGo-Map,alokki/PokemonGo-Map,osalivan/po-go-go,patlanio/PokemonGo-Map,filmkorn/PokemonGo-Map,doeiqts/PokemonGo-Map,PiaFraus/PokemonGo-Map,umeku/PokemonGo-Map,potamax/maptest,webycel/PokemonGo-Map,pgandev/RocketMap,tsuncp/PokemonGo-Map,averylarry/RocketMap,nijave/PokemonGo-Map,djfye/RocketMap,berlotto/PokemonGo-Map,umeku/PokemonGo-Map,slgphantom/RocketMap,osalivan/po-go,birdstream/RocketMap,cadocruz/PokemonGo-Map,pretsell/PokemonGo-Map,DeWenS/PokemonGo-Map,Darkknightz/PokemonGo-Map,JapuDCret/RocketMap-Do,horatiulefter/pokemon,neskk/RocketMap,tsuncp/PokemonGo-Map,simonhashadenough/PokemonGo-Map,RocketMap/RocketMap,POPSuL/PokemonGo-Map,Zyrix/PokemonGo-Map,sclo012/PokemonGo-Map,berlotto/PokemonGo-Map,HowDoesExcelWork/RocketMap,RocketMap/RocketMap,Alderon86/RocketMap,boby361/RocketMap,markusz/PokemonGo-Map,edgarborja/PokemonGo-Map,marauder37/PokemonGo-Map,vulampharmd/test,DarkSwatcat/PokemonGo-Map,anon0429/PokemonGo-Map,DennyLoko/RocketMap,JapuDCret/RocketMap-Do,DarkSwatcat/PokemonGo-Map,slgphantom/RocketMap,cristianougly/pokemongosaoleo,quagliero/PokemonGo-Map,sebastienvercammen/RocketMap,ultrafunkamsterdam/PokemonGo-Map-V2,sebastienvercammen/RocketMap,mikehow1984/PokemonGo-Map,seebadoris/pkmapmons,Darkknightz/PokemonGo-Map,berlotto/PokemonGo-Map,delold/PokemonGo-Map,sclo012/PokemonGo-Map,loquendomia/KokoxGO,k0mat/PokemonGo-Map,BallCity/PokemonGo-Map,birdstream/RocketMap,catnet23/PocketMap,neskk/RocketMap,pir2/PokemonGo-Map,Zoruk/PokemonGo-Map,LeluStudios/PogoMap,an0ninja/PokemonGo-Map,boby361/RocketMap,PiaFraus/PokemonGo-Map,filmkorn/PokemonGo-Map,Studio-XP/PokemonGo-Map,saulomarchiori/PokemonGo-Map,neskk/PokemonGo-Map,dev042/RocketMap,birdstream/RocketMap,darragjm/PokemonGo-Map,Zyrix/PokemonGo-Map,an0ninja/PokemonGo-Map,houkop/PokemonGo-Map,buddyfavors/PokemonGo-Map,MaTriXy/PokemonGo-Map,horatiulefter/pokemon,annatran/PokemonGo-Map,BallCity/PokemonGo-Map,k0mat/PokemonGo-Map,SilphServices/RocketMap,saulomarchiori/PokemonGo-Map,pkgta1/shuffle,tanishbaansal/pokemongomapi,cristianougly/pokemongosaoleo,luisintosh/poke,an0ninja/PokemonGo-Map,HowDoesExcelWork/RocketMap,mikehow1984/PokemonGo-Map,djfye/PokemonGo-Map,markusz/PokemonGo-Map,jjiko/PokemonGo-Map,zhengwang3351898/Pokemongo-Map,Zoruk/PokemonGo-Map,catnet23/PokemonGo-Map,tomballgithub/RocketMap,ultrafunkamsterdam/PokemonGo-Map-V2,voxx/RocketMap,osalivan/po-go-go,Alderon86/RocketMap,birdstream/RocketMap,hasosoft/PokemonGo-Map,hubertokf/RocketMap,invisiblek/PokemonGo-Map,cocktail13/pogom.py,medghaim/PokemonGo-Map,PiaFraus/PokemonGo-Map,Shibby7986/PokemonGo-Map,quagliero/PokemonGo-Map,filmkorn/PokemonGo-Map,tomballgithub/RocketMap,tanishbaansal/pokemongomapi,annatran/PokemonGo-Map,CalcMan/PokemonGo-Map,markusz/PokemonGo-Map,RocketMap/RocketMap,houkop/PokemonGo-Map,quagliero/PokemonGo-Map,luisintosh/poke,pir2/PokemonGo-Map,pkgta1/shuffle,hasosoft/PokemonGo-Map,anon0429/PokemonGo-Map,neskk/RocketMap,LeluStudios/PogoMap,AEtHeLsYn/RocketMap,Obihoernchen/RocketMap,rpotpogo/PokemonGo-Map,commanderjsoc/PokemonGo-Map,alokki/PokemonGo-Map,AEtHeLsYn/RocketMap,quagliero/PokemonGo-Map,djfye/PokemonGo-Map,Xcelled/PokemonGo-Map,catnet23/PokemonGo-Map,chrux/PokemonGo-Map,delold/PokemonGo-Map,sclo012/PokemonGo-Map,CalcMan/PokemonGo-Map,MaTriXy/PokemonGo-Map,sebastienvercammen/RocketMap,pretsell/PokemonGo-Map,AEtHeLsYn/RocketMap,DennyLoko/RocketMap,berlotto/PokemonGo-Map,medghaim/PokemonGo-Map,MaTriXy/PokemonGo-Map,cocktail13/pogom.py,ultrafunkamsterdam/PokemonGo-Map,DennyLoko/RocketMap,doeiqts/PokemonGo-Map,rpotpogo/PokemonGo-Map,Darkknightz/PokemonGo-Map,FranManre/PokeMap,mpw1337/RocketMap,tomballgithub/RocketMap,HowDoesExcelWork/RocketMap,delold/PokemonGo-Map,djfye/RocketMap,hubertokf/RocketMap,djfye/RocketMap,redswallow/pokemon-go-map,seebadoris/pkmapmons,DennyLoko/RocketMap,FranManre/PokeMap,sebastienvercammen/RocketMap,doeiqts/PokemonGo-Map,Shibby7986/PokemonGo-Map,ultrafunkamsterdam/PokemonGo-Map,Darkknightz/PokemonGo-Map,POPSuL/PokemonGo-Map,marauder37/PokemonGo-Map,averylarry/RocketMap,boby361/RocketMap,KoertJanssens/MasterBall.be,pdong/PokemonGo-Map,xrobau/PoGoMap,tsuncp/PokemonGo-Map,edgarborja/PokemonGo-Map,slgphantom/RocketMap,alokki/PokemonGo-Map,neskk/PokemonGo-Map,buddyfavors/PokemonGo-Map,seebadoris/pkmapmons,pretsell/PokemonGo-Map,buddyfavors/PokemonGo-Map,catnet23/PokemonGo-Map,Xcelled/PokemonGo-Map,houkop/PokemonGo-Map,Obihoernchen/RocketMap,rpotpogo/PokemonGo-Map,webycel/PokemonGo-Map,KoertJanssens/MasterBall.be,simonhashadenough/PokemonGo-Map,hasosoft/PokemonGo-Map,nijave/PokemonGo-Map,Xcelled/PokemonGo-Map,invisiblek/PokemonGo-Map,patlanio/PokemonGo-Map