auto merge of #13667 : TeXitoi/rust/shootout-chameneos-redux-fix, r=alexcrichton
auto merge of #13667 : TeXitoi/rust/shootout-chameneos-redux-fix, r=alexcrichton

* fix official shootout test (spacing)
* use libgreen to improve performances
* simplify and modernize code
* remove warnings

TheNeikos/rust,servo/rust,ebfull/rust,kwantam/rust,emk/rust,dinfuehr/rust,ebfull/rand,AerialX/rust-rt-minimal,mdinger/rust,miniupnp/rust,philyoon/rust,carols10cents/rust,barosl/rust,seanrivera/rust,nham/rust,dinfuehr/rust,jroesch/rust,dwillmer/rust,pelmers/rust,zubron/rust,avdi/rust,richo/rust,reem/rust,pshc/rust,kwantam/rust,0x73/rust,cllns/rust,bombless/rust,aneeshusa/rust,Ryman/rust,ebfull/rust,stepancheg/rust-ide-rust,graydon/rust,jashank/rust,nham/rust,ebfull/rust,pczarn/rust,AerialX/rust-rt-minimal,cllns/rust,zubron/rust,shepmaster/rand,sae-bom/rust,mihneadb/rust,Ryman/rust,l0kod/rust,zaeleus/rust,zaeleus/rust,philyoon/rust,ejjeong/rust,zubron/rust,krzysz00/rust,zubron/rust,stepancheg/rust-ide-rust,0x73/rust,barosl/rust,XMPPwocky/rust,jroesch/rust,mdinger/rust,pczarn/rust,erickt/rust,reem/rust,pelmers/rust,kwantam/rust,AerialX/rust-rt-minimal,bombless/rust,miniupnp/rust,0x73/rust,jashank/rust,aidancully/rust,pelmers/rust,zubron/rust,zaeleus/rust,sae-bom/rust,jashank/rust,zubron/rust,aidancully/rust,hauleth/rust,l0kod/rust,graydon/rust,krzysz00/rust,vhbit/rust,vhbit/rust,rprichard/rust,ejjeong/rust,huonw/rand,gifnksm/rust,aturon/rust,krzysz00/rust,seanrivera/rust,erickt/rust,pczarn/rust,dwillmer/rust,omasanori/rust,zubron/rust,vhbit/rust,jashank/rust,robertg/rust,stepancheg/rust-ide-rust,emk/rust,KokaKiwi/rust,seanrivera/rust,TheNeikos/rust,achanda/rand,P1start/rust,P1start/rust,ejjeong/rust,aidancully/rust,bombless/rust,gifnksm/rust,ebfull/rust,AerialX/rust-rt-minimal,stepancheg/rust-ide-rust,mihneadb/rust,KokaKiwi/rust,barosl/rust,pczarn/rust,victorvde/rust,rohitjoshi/rust,zubron/rust,XMPPwocky/rust,ktossell/rust,barosl/rust,nwin/rust,victorvde/rust,omasanori/rust,nwin/rust,P1start/rust,ruud-v-a/rust,GBGamer/rust,ktossell/rust,pshc/rust,mihneadb/rust,jbclements/rust,0x73/rust,l0kod/rust,XMPPwocky/rust,servo/rust,kimroen/rust,seanrivera/rust,GBGamer/rust,emk/rust,GBGamer/rust,emk/rust,dinfuehr/rust,untitaker/rust,zaeleus/rust,ejjeong/rust,robertg/rust,cllns/rust,kimroen/rust,omasanori/rust,andars/rust,mahkoh/rust,avdi/rust,XMPPwocky/rust,hauleth/rust,AerialX/rust,AerialX/rust,robertg/rust,graydon/rust,nwin/rust,servo/rust,kwantam/rust,pelmers/rust,XMPPwocky/rust,jroesch/rust,rohitjoshi/rust,aneeshusa/rust,mahkoh/rust,carols10cents/rust,miniupnp/rust,aneeshusa/rust,rprichard/rust,quornian/rust,P1start/rust,quornian/rust,bombless/rust-docs-chinese,untitaker/rust,barosl/rust,bombless/rust,emk/rust,rprichard/rust,jbclements/rust,carols10cents/rust,quornian/rust,andars/rust,kimroen/rust,omasanori/rust,P1start/rust,defuz/rust,sae-bom/rust,mahkoh/rust,krzysz00/rust,pczarn/rust,pshc/rust,jroesch/rust,reem/rust,Ryman/rust,hauleth/rust,TheNeikos/rust,robertg/rust,jbclements/rust,richo/rust,jbclements/rust,defuz/rust,AerialX/rust,jashank/rust,pczarn/rust,0x73/rust,philyoon/rust,rprichard/rust,victorvde/rust,GBGamer/rust,zachwick/rust,KokaKiwi/rust,untitaker/rust,kwantam/rust,nham/rust,mdinger/rust,dinfuehr/rust,aidancully/rust,reem/rust,0x73/rust,andars/rust,KokaKiwi/rust,miniupnp/rust,aneeshusa/rust,ebfull/rust,victorvde/rust,andars/rust,ruud-v-a/rust,stepancheg/rust-ide-rust,barosl/rust,vhbit/rust,nham/rust,servo/rust,stepancheg/rust-ide-rust,ktossell/rust,mihneadb/rust,GBGamer/rust,aneeshusa/rust,bombless/rust,l0kod/rust,miniupnp/rust,rprichard/rust,seanrivera/rust,richo/rust,defuz/rust,aneeshusa/rust,graydon/rust,pelmers/rust,zaeleus/rust,gifnksm/rust,rohitjoshi/rust,omasanori/rust,GBGamer/rust,dwillmer/rust,barosl/rust,ruud-v-a/rust,ruud-v-a/rust,Ryman/rust,AerialX/rust,quornian/rust,robertg/rust,0x73/rust,richo/rust,rprichard/rust,zachwick/rust,aepsil0n/rust,mvdnes/rust,quornian/rust,Ryman/rust,TheNeikos/rust,mahkoh/rust,philyoon/rust,erickt/rust,cllns/rust,TheNeikos/rust,jroesch/rust,nwin/rust,hauleth/rust,jbclements/rust,cllns/rust,nwin/rust,aidancully/rust,nham/rust,ruud-v-a/rust,mvdnes/rust,ktossell/rust,AerialX/rust,sae-bom/rust,mihneadb/rust,GBGamer/rust,jroesch/rust,dwillmer/rust,jashank/rust,jbclements/rust,AerialX/rust,jbclements/rust,pshc/rust,seanrivera/rust,avdi/rust,cllns/rust,l0kod/rust,hauleth/rust,jroesch/rust,ktossell/rust,KokaKiwi/rust,reem/rust,vhbit/rust,ejjeong/rust,aepsil0n/rust,nwin/rust,zaeleus/rust,dwillmer/rust,emk/rust,Ryman/rust,untitaker/rust,KokaKiwi/rust,ebfull/rust,graydon/rust,reem/rust,quornian/rust,erickt/rust,robertg/rust,aturon/rust,nwin/rust,l0kod/rust,dwillmer/rust,ktossell/rust,nwin/rust,dwillmer/rust,servo/rust,erickt/rust,zachwick/rust,pshc/rust,mahkoh/rust,zachwick/rust,avdi/rust,jbclements/rust,zachwick/rust,erickt/rust,mdinger/rust,sae-bom/rust,l0kod/rust,AerialX/rust-rt-minimal,gifnksm/rust,kimroen/rust,kimroen/rust,pelmers/rust,rohitjoshi/rust,defuz/rust,aturon/rust,hauleth/rust,pczarn/rust,untitaker/rust,servo/rust,vhbit/rust,rohitjoshi/rust,mdinger/rust,mvdnes/rust,servo/rust,krzysz00/rust,aturon/rust,ruud-v-a/rust,Ryman/rust,aturon/rust,arthurprs/rand,pshc/rust,zachwick/rust,carols10cents/rust,dinfuehr/rust,bombless/rust,quornian/rust,victorvde/rust,GrahamDennis/rand,emk/rust,bhickey/rand,jashank/rust,omasanori/rust,XMPPwocky/rust,richo/rust,mahkoh/rust,andars/rust,erickt/rust,nham/rust,mvdnes/rust,philyoon/rust,carols10cents/rust,aepsil0n/rust,aepsil0n/rust,dinfuehr/rust,andars/rust,sae-bom/rust,P1start/rust,mihneadb/rust,pshc/rust,aepsil0n/rust,dwillmer/rust,carols10cents/rust,kimroen/rust,jbclements/rust,TheNeikos/rust,victorvde/rust,waynenilsen/rand,pshc/rust,avdi/rust,gifnksm/rust,GBGamer/rust,rohitjoshi/rust,defuz/rust,l0kod/rust,miniupnp/rust,richo/rust,ejjeong/rust,mvdnes/rust,avdi/rust,krzysz00/rust,stepancheg/rust-ide-rust,vhbit/rust,ktossell/rust,aepsil0n/rust,bluss/rand,nham/rust,AerialX/rust-rt-minimal,vhbit/rust,defuz/rust,retep998/rand,aturon/rust,miniupnp/rust,P1start/rust,kimroen/rust,philyoon/rust,jashank/rust,aturon/rust,aidancully/rust,mdinger/rust,graydon/rust,jroesch/rust,mvdnes/rust,miniupnp/rust,untitaker/rust,gifnksm/rust,kwantam/rust