[Bikeshed request] Making pest simpler!

To summarize here, I’ve made the pest_deconstruct library with intent of making consumption of pest parse trees simpler. I want ideas for better naming (PestDeconstructor is a bad name imho, I just chose something), the best design for consumers, and whether upstreaming parts of it into pest proper is the correct idea.

The derive bits are the real magic, and will continue to evolve separately from the pest versioning for the time being.