auto merge of #4132 : jtuchsen/servo/issue-4131, r=jdm
auto merge of #4132 : jtuchsen/servo/issue-4131, r=jdm

A slight refactor.

jgraham/servo,pyfisch/servo,GyrosOfWar/servo,karlito40/servo,emilio/servo,zhangjunlei26/servo,wpgallih/servo,samfoo/servo,Adenilson/prototype-viewing-distance,jlegendary/servo,jimberlage/servo,nnethercote/servo,evilpie/servo,pyfisch/servo,peterjoel/servo,WriterOfAlicrow/servo,CJ8664/servo,codemac/servo,mbrubeck/servo,rixrix/servo,rentongzhang/servo,GreenRecycleBin/servo,wpgallih/servo,notriddle/servo,ryancanhelpyou/servo,ruud-v-a/servo,aweinstock314/servo,srbhklkrn/SERVOENGINE,codemac/servo,DominoTree/servo,DominoTree/servo,nick-thompson/servo,dsandeephegde/servo,indykish/servo,mdibaiee/servo,nnethercote/servo,ruud-v-a/servo,tempbottle/servo,larsbergstrom/servo,SimonSapin/servo,echochamber/servo,peterjoel/servo,jlegendary/servo,szeged/servo,michaelwu/servo,nnethercote/servo,AnthonyBroadCrawford/servo,notriddle/servo,g-k/servo,mattnenterprise/servo,dmarcos/servo,notriddle/servo,rnestler/servo,sadmansk/servo,akosel/servo,boghison/servo,saneyuki/servo,samfoo/servo,szeged/servo,tempbottle/servo,saratang/servo,s142857/servo,pyecs/servo,dhananjay92/servo,bjwbell/servo,pyecs/servo,steveklabnik/servo,nick-thompson/servo,szeged/servo,wpgallih/servo,dmarcos/servo,srbhklkrn/SERVOENGINE,GreenRecycleBin/servo,jgraham/servo,peterjoel/servo,zhangjunlei26/servo,upsuper/servo,ConnorGBrewster/servo,mdibaiee/servo,walac/servo,wartman4404/servo,dhananjay92/servo,GyrosOfWar/servo,peterjoel/servo,saratang/servo,larsbergstrom/servo,WriterOfAlicrow/servo,rixrix/servo,saneyuki/servo,indykish/servo,RenaudParis/servo,evilpie/servo,canaltinova/servo,notriddle/servo,ConnorGBrewster/servo,youprofit/servo,CJ8664/servo,dhananjay92/servo,anthgur/servo,rnestler/servo,deokjinkim/servo,samfoo/servo,walac/servo,jimberlage/servo,eddyb/servo,runarberg/servo,emilio/servo,dati91/servo,splav/servo,deokjinkim/servo,dvberkel/servo,mbrubeck/servo,szeged/servo,nnethercote/servo,snf/servo,ruud-v-a/servo,g-k/servo,wartman4404/servo,walac/servo,runarberg/servo,zentner-kyle/servo,evilpie/servo,jgraham/servo,larsbergstrom/servo,deokjinkim/servo,meh/servo,youprofit/servo,caldwell/servo,dhananjay92/servo,pyecs/servo,pyfisch/servo,saratang/servo,dsandeephegde/servo,emilio/servo,dagnir/servo,dhananjay92/servo,tafia/servo,dvberkel/servo,dmarcos/servo,brendandahl/servo,jgraham/servo,paulrouget/servo,samfoo/servo,s142857/servo,sadmansk/servo,michaelwu/servo,zentner-kyle/servo,ryancanhelpyou/servo,AnthonyBroadCrawford/servo,luniv/servo,saratang/servo,RenaudParis/servo,nrc/servo,anthgur/servo,anthgur/servo,mbrubeck/servo,evilpie/servo,Adenilson/prototype-viewing-distance,larsbergstrom/servo,luniv/servo,runarberg/servo,splav/servo,nnethercote/servo,rentongzhang/servo,ruud-v-a/servo,vks/servo,nerith/servo,DominoTree/servo,froydnj/servo,tafia/servo,jlegendary/servo,meh/servo,kindersung/servo,peterjoel/servo,jimberlage/servo,KiChjang/servo,walac/servo,tschneidereit/servo,g-k/servo,fiji-flo/servo,jgraham/servo,wartman4404/servo,s142857/servo,walac/servo,froydnj/servo,indykish/servo,aidanhs/servo,eddyb/servo,rixrix/servo,indykish/servo,samfoo/servo,pgonda/servo,dsandeephegde/servo,tschneidereit/servo,dagnir/servo,vks/servo,hyowon/servo,g-k/servo,s142857/servo,deokjinkim/servo,aweinstock314/servo,dvberkel/servo,wpgallih/servo,cbrewster/servo,jdramani/servo,jimberlage/servo,GreenRecycleBin/servo,fiji-flo/servo,pgonda/servo,wpgallih/servo,s142857/servo,zhangjunlei26/servo,Adenilson/prototype-viewing-distance,SimonSapin/servo,peterjoel/servo,CJ8664/servo,hyowon/servo,mdibaiee/servo,mattnenterprise/servo,mt2d2/servo,pyfisch/servo,jimberlage/servo,youprofit/servo,A-deLuna/servo,karlito40/servo,Adenilson/prototype-viewing-distance,larsbergstrom/servo,saneyuki/servo,DominoTree/servo,anthgur/servo,splav/servo,fiji-flo/servo,saneyuki/servo,steveklabnik/servo,s142857/servo,wpgallih/servo,avadacatavra/servo,paulrouget/servo,rixrix/servo,dagnir/servo,notriddle/servo,chotchki/servo,srbhklkrn/SERVOENGINE,nnethercote/servo,fiji-flo/servo,ConnorGBrewster/servo,indykish/servo,tafia/servo,g-k/servo,zentner-kyle/servo,fiji-flo/servo,steveklabnik/servo,peterjoel/servo,huonw/servo,AnthonyBroadCrawford/servo,GyrosOfWar/servo,rentongzhang/servo,ConnorGBrewster/servo,AnthonyBroadCrawford/servo,GreenRecycleBin/servo,KiChjang/servo,pyfisch/servo,caldwell/servo,A-deLuna/servo,jgraham/servo,snf/servo,dsandeephegde/servo,emilio/servo,kindersung/servo,szeged/servo,fiji-flo/servo,jdramani/servo,larsbergstrom/servo,larsbergstrom/servo,boghison/servo,splav/servo,meh/servo,dati91/servo,dmarcos/servo,ConnorGBrewster/servo,mt2d2/servo,nick-thompson/servo,tafia/servo,thiagopnts/servo,chotchki/servo,ryancanhelpyou/servo,luniv/servo,huonw/servo,dagnir/servo,indykish/servo,huonw/servo,aidanhs/servo,steveklabnik/servo,aweinstock314/servo,kindersung/servo,evilpie/servo,DominoTree/servo,tschneidereit/servo,canaltinova/servo,eddyb/servo,jlegendary/servo,dati91/servo,DominoTree/servo,larsbergstrom/servo,mdibaiee/servo,AnthonyBroadCrawford/servo,sadmansk/servo,avadacatavra/servo,thiagopnts/servo,indykish/servo,evilpie/servo,CJ8664/servo,ConnorGBrewster/servo,A-deLuna/servo,upsuper/servo,GreenRecycleBin/servo,sadmansk/servo,emilio/servo,rentongzhang/servo,AnthonyBroadCrawford/servo,canaltinova/servo,deokjinkim/servo,g-k/servo,deokjinkim/servo,Adenilson/prototype-viewing-distance,tempbottle/servo,codemac/servo,szeged/servo,larsbergstrom/servo,tempbottle/servo,pyfisch/servo,zhangjunlei26/servo,bjwbell/servo,walac/servo,SimonSapin/servo,nrc/servo,bfrohs/servo,A-deLuna/servo,aidanhs/servo,jdramani/servo,canaltinova/servo,nnethercote/servo,nrc/servo,peterjoel/servo,jlegendary/servo,zhangjunlei26/servo,jlegendary/servo,codemac/servo,brendandahl/servo,wartman4404/servo,pgonda/servo,snf/servo,upsuper/servo,bfrohs/servo,saneyuki/servo,RenaudParis/servo,eddyb/servo,karlito40/servo,caldwell/servo,emilio/servo,zhangjunlei26/servo,A-deLuna/servo,mbrubeck/servo,thiagopnts/servo,runarberg/servo,splav/servo,caldwell/servo,thiagopnts/servo,rnestler/servo,dmarcos/servo,RenaudParis/servo,paulrouget/servo,mt2d2/servo,mt2d2/servo,g-k/servo,mbrubeck/servo,luniv/servo,tschneidereit/servo,froydnj/servo,paulrouget/servo,CJ8664/servo,pyecs/servo,tempbottle/servo,rnestler/servo,cbrewster/servo,brendandahl/servo,mdibaiee/servo,dvberkel/servo,zentner-kyle/servo,notriddle/servo,j3parker/servo,jimberlage/servo,canaltinova/servo,KiChjang/servo,jdramani/servo,saneyuki/servo,aweinstock314/servo,vks/servo,saratang/servo,snf/servo,mdibaiee/servo,srbhklkrn/SERVOENGINE,thiagopnts/servo,saneyuki/servo,rnestler/servo,cbrewster/servo,steveklabnik/servo,wpgallih/servo,thiagopnts/servo,boghison/servo,huonw/servo,pgonda/servo,CJ8664/servo,szeged/servo,bjwbell/servo,samfoo/servo,fiji-flo/servo,dsandeephegde/servo,aidanhs/servo,splav/servo,j3parker/servo,meh/servo,zhangjunlei26/servo,tempbottle/servo,rnestler/servo,nick-thompson/servo,youprofit/servo,thiagopnts/servo,indykish/servo,snf/servo,SimonSapin/servo,avadacatavra/servo,dagnir/servo,GreenRecycleBin/servo,karlito40/servo,hyowon/servo,runarberg/servo,j3parker/servo,wpgallih/servo,KiChjang/servo,youprofit/servo,RenaudParis/servo,nrc/servo,tschneidereit/servo,jgraham/servo,ryancanhelpyou/servo,cbrewster/servo,sadmansk/servo,SimonSapin/servo,dati91/servo,eddyb/servo,luniv/servo,rentongzhang/servo,paulrouget/servo,meh/servo,wartman4404/servo,dvberkel/servo,mattnenterprise/servo,tafia/servo,szeged/servo,cbrewster/servo,aweinstock314/servo,KiChjang/servo,bjwbell/servo,A-deLuna/servo,eddyb/servo,anthgur/servo,tschneidereit/servo,mattnenterprise/servo,srbhklkrn/SERVOENGINE,aidanhs/servo,brendandahl/servo,peterjoel/servo,dagnir/servo,rixrix/servo,nrc/servo,youprofit/servo,huonw/servo,notriddle/servo,kindersung/servo,mt2d2/servo,WriterOfAlicrow/servo,anthgur/servo,kindersung/servo,bfrohs/servo,aidanhs/servo,luniv/servo,SimonSapin/servo,dagnir/servo,akosel/servo,zentner-kyle/servo,GreenRecycleBin/servo,nerith/servo,nnethercote/servo,peterjoel/servo,WriterOfAlicrow/servo,nick-thompson/servo,sadmansk/servo,szeged/servo,rnestler/servo,emilio/servo,vks/servo,tempbottle/servo,upsuper/servo,echochamber/servo,meh/servo,sadmansk/servo,caldwell/servo,j3parker/servo,jdramani/servo,bjwbell/servo,fiji-flo/servo,jimberlage/servo,nerith/servo,avadacatavra/servo,dsandeephegde/servo,snf/servo,j3parker/servo,deokjinkim/servo,boghison/servo,emilio/servo,zentner-kyle/servo,KiChjang/servo,pyecs/servo,WriterOfAlicrow/servo,pgonda/servo,caldwell/servo,chotchki/servo,dsandeephegde/servo,codemac/servo,karlito40/servo,upsuper/servo,akosel/servo,akosel/servo,nnethercote/servo,ryancanhelpyou/servo,canaltinova/servo,RenaudParis/servo,pgonda/servo,vks/servo,emilio/servo,ryancanhelpyou/servo,rentongzhang/servo,sadmansk/servo,pyecs/servo,dhananjay92/servo,luniv/servo,michaelwu/servo,michaelwu/servo,Adenilson/prototype-viewing-distance,GreenRecycleBin/servo,hyowon/servo,dati91/servo,pyfisch/servo,runarberg/servo,canaltinova/servo,mt2d2/servo,CJ8664/servo,larsbergstrom/servo,mbrubeck/servo,evilpie/servo,bjwbell/servo,pyfisch/servo,echochamber/servo,rentongzhang/servo,mattnenterprise/servo,chotchki/servo,karlito40/servo,GyrosOfWar/servo,paulrouget/servo,evilpie/servo,indykish/servo,mattnenterprise/servo,bfrohs/servo,pgonda/servo,dvberkel/servo,paulrouget/servo,DominoTree/servo,ruud-v-a/servo,j3parker/servo,akosel/servo,saneyuki/servo,boghison/servo,echochamber/servo,ConnorGBrewster/servo,michaelwu/servo,DominoTree/servo,tafia/servo,froydnj/servo,dsandeephegde/servo,szeged/servo,wpgallih/servo,avadacatavra/servo,nick-thompson/servo,upsuper/servo,splav/servo,zhangjunlei26/servo,karlito40/servo,hyowon/servo,dvberkel/servo,KiChjang/servo,jimberlage/servo,brendandahl/servo,thiagopnts/servo,mattnenterprise/servo,akosel/servo,upsuper/servo,nrc/servo,froydnj/servo,cbrewster/servo,wartman4404/servo,ryancanhelpyou/servo,huonw/servo,chotchki/servo,dhananjay92/servo,jlegendary/servo,saneyuki/servo,jdramani/servo,jimberlage/servo,mattnenterprise/servo,runarberg/servo,pyecs/servo,dati91/servo,KiChjang/servo,GyrosOfWar/servo,paulrouget/servo,youprofit/servo,echochamber/servo,vks/servo,dati91/servo,tafia/servo,eddyb/servo,brendandahl/servo,mt2d2/servo,splav/servo,GreenRecycleBin/servo,srbhklkrn/SERVOENGINE,caldwell/servo,notriddle/servo,snf/servo,nrc/servo,splav/servo,cbrewster/servo,dmarcos/servo,samfoo/servo,emilio/servo,saneyuki/servo,nerith/servo,brendandahl/servo,rixrix/servo,avadacatavra/servo,codemac/servo,notriddle/servo,tschneidereit/servo,nick-thompson/servo,zentner-kyle/servo,rixrix/servo,GyrosOfWar/servo,A-deLuna/servo,SimonSapin/servo,saratang/servo,walac/servo,froydnj/servo,nerith/servo,nerith/servo,DominoTree/servo,hyowon/servo,vks/servo,nnethercote/servo,cbrewster/servo,zhangjunlei26/servo,hyowon/servo,avadacatavra/servo,ConnorGBrewster/servo,WriterOfAlicrow/servo,KiChjang/servo,boghison/servo,KiChjang/servo,michaelwu/servo,eddyb/servo,steveklabnik/servo,SimonSapin/servo,paulrouget/servo,pyfisch/servo,RenaudParis/servo,CJ8664/servo,bjwbell/servo,rixrix/servo,splav/servo,dati91/servo,nerith/servo,akosel/servo,kindersung/servo,aweinstock314/servo,paulrouget/servo,DominoTree/servo,canaltinova/servo,rnestler/servo,rixrix/servo,aweinstock314/servo,aidanhs/servo,bfrohs/servo,bfrohs/servo,notriddle/servo,srbhklkrn/SERVOENGINE,s142857/servo,WriterOfAlicrow/servo,echochamber/servo,saratang/servo,meh/servo,jdramani/servo,echochamber/servo,wartman4404/servo,mdibaiee/servo,codemac/servo,dmarcos/servo,j3parker/servo,AnthonyBroadCrawford/servo,mbrubeck/servo,avadacatavra/servo,huonw/servo,ruud-v-a/servo,anthgur/servo,pyfisch/servo,GyrosOfWar/servo,Adenilson/prototype-viewing-distance,anthgur/servo,boghison/servo,mbrubeck/servo,evilpie/servo,steveklabnik/servo,kindersung/servo,upsuper/servo,chotchki/servo