Richard proposed to re-work the bitbake shell script so as to either remove it or at least stop the double execuction of bitbake. The primary purpose today for the bitbake shell wrapper is to deal with pseudo and this can happen in a different way in the future.
As of http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=bd07f35bdb9423440da367690efba1131aa51b4e the double execution has been removed.
Verified in master:e04e6dab0afa8f72bf001b0cc106cd13b7694a91 During a fresh build, there is no longer a "Pseudo is not present but is required, building this first before the main build " step.