"How do you make sure the player cannot leave the level area, and make sure there is a path from the start to the goal?"
I simply tell the player they have no reason to wander off the map, if they try. No need for a more involved fiction. As for your other question, after placing the trees I generate a forest trail that plows right through them if necessary. Which is... pretty much how you'd do it in real life. Doing the opposite would be a lot more complicated, and putting the cart before the horses on top of that. I'm generating a forest village, not a planned city! (The latter is, of course, exactly what I'm doing in RogueBot. Notice how the algorithm is radically different there.)
That said, thanks for the kind words. I got to this point after many failed attempts, spread over long years. And I'm still a novice at PCG. But my methods work. ;)