Envelope passing for Synths and Patterns

Sorry, I tried to scrub custom classes from my code, but I let Pwnrand slip by! FWIW Pwnrand is just Prand, but it automatically normalizes the weights, so you don’t need to call .normalizeSum yourself.