Scaling Neural Program Synthesis with Distribution-based Search