Add experimental "unified execution" for scripts and styles.

Split inline script and style evaluation into two functions:
- `eval`: conditionally evaluate the text only if changed
- `exec`: unconditionally execute the text

This matches the behavior of external script and style installation:
- `load`: conditionally install the resource only if changed
- `get`: unconditionally install the resource.

For now, guard the new logic behind a `experimental-execute-unified` config.

Progress on #25.
The original goal with #25 was consistency between how we handle scripts and styles.

To be the most consistent between, I can delete the line that removes script nodes from the DOM in `script.exec`. 

Alternatively, since SPF now tracks what's loaded internally (instead of using presence in the DOM), we can always remove script nodes (for all of `script.exec`, `script.eval`, `script.get`, and `script.load`) and never remove style nodes.