Inline into the last node
Inline into the last node

Also lots of refactoring and tidyup

acowley/ghc,forked-upstream-packages-for-ghcjs/ghc,forked-upstream-packages-for-ghcjs/ghc,mcschroeder/ghc,ekmett/ghc,ezyang/ghc,vTurbine/ghc,nomeata/ghc,tjakway/ghcjvm,sgillespie/ghc,sgillespie/ghc,siddhanathan/ghc,vikraman/ghc,christiaanb/ghc,AlexanderPankiv/ghc,wxwxwwxxx/ghc,oldmanmike/ghc,bitemyapp/ghc,hferreiro/replay,nkaretnikov/ghc,gridaphobe/ghc,gridaphobe/ghc,anton-dessiatov/ghc,wxwxwwxxx/ghc,frantisekfarka/ghc-dsi,shlevy/ghc,hferreiro/replay,shlevy/ghc,shlevy/ghc,shlevy/ghc,mcschroeder/ghc,vTurbine/ghc,hferreiro/replay,lukexi/ghc-7.8-arm64,oldmanmike/ghc,frantisekfarka/ghc-dsi,mfine/ghc,christiaanb/ghc,AlexanderPankiv/ghc,snoyberg/ghc,oldmanmike/ghc,ryantm/ghc,nomeata/ghc,ml9951/ghc,vikraman/ghc,acowley/ghc,oldmanmike/ghc,christiaanb/ghc,oldmanmike/ghc,wxwxwwxxx/ghc,nkaretnikov/ghc,holzensp/ghc,forked-upstream-packages-for-ghcjs/ghc,tjakway/ghcjvm,TomMD/ghc,spacekitteh/smcghc,mfine/ghc,vTurbine/ghc,nkaretnikov/ghc,vikraman/ghc,snoyberg/ghc,spacekitteh/smcghc,fmthoma/ghc,ml9951/ghc,ml9951/ghc,nathyong/microghc-ghc,fmthoma/ghc,nushio3/ghc,urbanslug/ghc,acowley/ghc,acowley/ghc,fmthoma/ghc,anton-dessiatov/ghc,nomeata/ghc,ryantm/ghc,forked-upstream-packages-for-ghcjs/ghc,TomMD/ghc,elieux/ghc,AlexanderPankiv/ghc,sgillespie/ghc,siddhanathan/ghc,hferreiro/replay,tibbe/ghc,lukexi/ghc,sdiehl/ghc,nathyong/microghc-ghc,vTurbine/ghc,wxwxwwxxx/ghc,mfine/ghc,siddhanathan/ghc,nathyong/microghc-ghc,jstolarek/ghc,ml9951/ghc,TomMD/ghc,urbanslug/ghc,sgillespie/ghc,ml9951/ghc,wxwxwwxxx/ghc,gridaphobe/ghc,ezyang/ghc,da-x/ghc,siddhanathan/ghc,sgillespie/ghc,frantisekfarka/ghc-dsi,mfine/ghc,lukexi/ghc-7.8-arm64,shlevy/ghc,spacekitteh/smcghc,nkaretnikov/ghc,fmthoma/ghc,jstolarek/ghc,fmthoma/ghc,da-x/ghc,GaloisInc/halvm-ghc,snoyberg/ghc,nathyong/microghc-ghc,snoyberg/ghc,wxwxwwxxx/ghc,ryantm/ghc,siddhanathan/ghc,ml9951/ghc,acowley/ghc,forked-upstream-packages-for-ghcjs/ghc,mcschroeder/ghc,nkaretnikov/ghc,tjakway/ghcjvm,fmthoma/ghc,gcampax/ghc,sdiehl/ghc,tjakway/ghcjvm,elieux/ghc,ghc-android/ghc,elieux/ghc,ghc-android/ghc,shlevy/ghc,mfine/ghc,vikraman/ghc,vikraman/ghc,tibbe/ghc,vikraman/ghc,elieux/ghc,forked-upstream-packages-for-ghcjs/ghc,GaloisInc/halvm-ghc,vTurbine/ghc,sdiehl/ghc,christiaanb/ghc,TomMD/ghc,ryantm/ghc,snoyberg/ghc,urbanslug/ghc,mettekou/ghc,olsner/ghc,gcampax/ghc,AlexanderPankiv/ghc,vTurbine/ghc,spacekitteh/smcghc,nushio3/ghc,lukexi/ghc,anton-dessiatov/ghc,holzensp/ghc,da-x/ghc,gcampax/ghc,tibbe/ghc,mettekou/ghc,ml9951/ghc,TomMD/ghc,ezyang/ghc,shlevy/ghc,olsner/ghc,frantisekfarka/ghc-dsi,wxwxwwxxx/ghc,christiaanb/ghc,nomeata/ghc,spacekitteh/smcghc,holzensp/ghc,mcschroeder/ghc,holzensp/ghc,ghc-android/ghc,da-x/ghc,bitemyapp/ghc,gridaphobe/ghc,AlexanderPankiv/ghc,elieux/ghc,olsner/ghc,siddhanathan/ghc,christiaanb/ghc,ghc-android/ghc,sdiehl/ghc,acowley/ghc,fmthoma/ghc,nathyong/microghc-ghc,sdiehl/ghc,tjakway/ghcjvm,oldmanmike/ghc,tjakway/ghcjvm,mettekou/ghc,olsner/ghc,GaloisInc/halvm-ghc,sgillespie/ghc,hferreiro/replay,nkaretnikov/ghc,green-haskell/ghc,gridaphobe/ghc,green-haskell/ghc,siddhanathan/ghc,GaloisInc/halvm-ghc,ghc-android/ghc,jstolarek/ghc,sgillespie/ghc,forked-upstream-packages-for-ghcjs/ghc,bitemyapp/ghc,GaloisInc/halvm-ghc,gridaphobe/ghc,urbanslug/ghc,ezyang/ghc,mettekou/ghc,urbanslug/ghc,mettekou/ghc,tibbe/ghc,ghc-android/ghc,vikraman/ghc,nushio3/ghc,christiaanb/ghc,ml9951/ghc,gcampax/ghc,mettekou/ghc,gcampax/ghc,lukexi/ghc-7.8-arm64,tjakway/ghcjvm,nushio3/ghc,frantisekfarka/ghc-dsi,da-x/ghc,green-haskell/ghc,anton-dessiatov/ghc,urbanslug/ghc,ezyang/ghc,ekmett/ghc,olsner/ghc,elieux/ghc,bitemyapp/ghc,AlexanderPankiv/ghc,ekmett/ghc,gcampax/ghc,TomMD/ghc,mcschroeder/ghc,nkaretnikov/ghc,GaloisInc/halvm-ghc,oldmanmike/ghc,mfine/ghc,lukexi/ghc,mcschroeder/ghc,jstolarek/ghc,ghc-android/ghc,da-x/ghc,nathyong/microghc-ghc,gridaphobe/ghc,lukexi/ghc,anton-dessiatov/ghc,holzensp/ghc,mcschroeder/ghc,sdiehl/ghc,tibbe/ghc,lukexi/ghc,lukexi/ghc-7.8-arm64,acowley/ghc,ekmett/ghc,nushio3/ghc,green-haskell/ghc,GaloisInc/halvm-ghc,nathyong/microghc-ghc,da-x/ghc,vTurbine/ghc,ekmett/ghc,mfine/ghc,jstolarek/ghc,gcampax/ghc,nushio3/ghc,snoyberg/ghc,anton-dessiatov/ghc,nomeata/ghc,urbanslug/ghc,sdiehl/ghc,hferreiro/replay,bitemyapp/ghc,olsner/ghc,AlexanderPankiv/ghc,lukexi/ghc-7.8-arm64,nushio3/ghc,anton-dessiatov/ghc,mettekou/ghc,hferreiro/replay,snoyberg/ghc,ezyang/ghc,elieux/ghc,green-haskell/ghc,ezyang/ghc,olsner/ghc,ryantm/ghc,TomMD/ghc