Add macro for refcounting runtime structures.
Add macro for refcounting runtime structures.

The macro with the extra dtor parameter is intended for structures like
rust_chan which may not necessarily delete themselves when the ref count
becomes 0. This functionality will be used in an upcoming changeset.

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