Refactor towards sexp changes

Some refactorings and cleanup in order to work towards re-applying the sexp changes.

This mostly makes all `Build::Script` implementations use `sh.[dsl_method]` and stops including `Dsl` to `Build::Script`. Instead `sh` will always be the current `Shell::Node`.

This shouldn't change any behaviour, and should be good to be merged as soon as tested on staging.